J'ai un fichier txt avec des données qui ressemble à ceci:données de mise à jour dans le fichier txt/xml en C#
a:1(2,3) 55(33,45,67)
b:2(1,33,456) 4(123,12444)
qui signifie ce mot « un » apparaît dans le texte 1 dans des endroits 2 et 3 et texte 55 dans les lieux 33,45 et 67 ..
J'ai quelques textes et je vais partout dans ces textes et si je vois que le mot "a" apparaît dans un texte, alors je dois mettre à jour le fichier texte ci-dessus en conséquence . (Les données sur « un » peut être plus grande qu'une ligne bien sûr)
Comment puis-je mettre à jour la ligne où « a » est sans endommager la ligne où « b » est? J'ai vu ici dans stackoverflow que je peux utiliser peut-être un fichier xml. Si j'utilise le fichier xml, puis-je lire l'ensemble des données "a", le mettre à jour et le réécrire sans endommager la ligne "b"? Ou peut-être que chaque donnée sur un mot peut se trouver dans une structure de données que je peux lire d'une manière ou d'une autre dans le fichier, la mettre à jour puis l'écrire au même endroit?
Merci à l'avance,
Greg
comment linq linux au xml aide-t-il à manipuler des chaînes simples? –
Comme je l'ai compris d'après ce que j'ai lu dans ce lien, vous pouvez simplement créer un document XML, puis vous pouvez simplement naviguer vers le XElement dont le contenu que vous souhaitez remplacer, puis utilisez la méthode ReplaceNodes(). –
@hellfrost, s'il s'agissait d'une simple manipulation de chaîne, cela n'aiderait pas. Mais, Greg veut maintenir un fichier d'enregistrements qui suit les emplacements des mots. S'il y a beaucoup de mots et beaucoup d'emplacements, le traitement manuel d'un fichier ligne par ligne nécessite beaucoup de traitement inutile. L'utilisation de XML permettra un accès incrémentiel des enregistrements. @Greg. Correct. Mais, vous pouvez également trouver un élément XML (le mot) et insérer/mettre à jour/supprimer des nœuds qui référencent ce mot dans un texte. –