2010-05-24 7 views
0

comment supprimer les mêmes lignes dans le fichier .txt mais conserver l'une d'elles en utilisant C#?supprimer les mêmes lignes du fichier texte par C#

+0

Reformulez votre question s'il vous plaît, je n'ai pas pu la comprendre> _ Warty

+0

exemple j'ai 5 lignes dans le fichier texte trois d'entre eux est "il va à l'école" Je veux supprimer deux et conserver l'un d'entre eux, mais les lignes distribuées dans le texte comme: Il est un chat il va école Je vais prendre mon livre il va à l'école il va à l'école – kartal

+0

On dirait une déduplication? Comment savez-vous quelle ligne vous voulez garder? Conservez-vous juste la première instance? –

Répondre

10

Lecture ligne par ligne. Ajoutez la ligne à un HashSet et Add renvoie true, imprimez la ligne à la sortie.

0

Il existe plusieurs façons. On pourrait être d'utiliser une version d'un ensemble. Regardez C# Set collection? pour cela.

Si toutes les mêmes lignes sont les unes après les autres, vous pouvez simplement parcourir et voir si la ligne correspond à la dernière ligne. Si c'est le cas, jetez-le.

0

Votre code ressemblerait à quelque chose comme ceci:

  1. Pour chaque ligne dans le fichier d'entrée.
  2. Si la ligne actuelle n'est pas la même que la ligne précédente , écrivez-la en le fichier de sortie.
  3. Définissez la ligne actuelle égale à la ligne précédente .

Cela suppose que les lignes en double sont adjacentes. Si elles ne sont pas adjacentes, vous devrez trier le fichier en premier.

+0

L'OP a précisé dans un commentaire qu'ils ne sont pas adjacents. –

Questions connexes