cs_aus3004
Messages postés319Date d'inscriptionjeudi 1 avril 2010StatutMembreDernière intervention16 mars 2011
-
13 oct. 2010 à 18:26
NHenry
Messages postés15113Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention22 avril 2024
-
16 oct. 2010 à 13:10
Bonjour, voila j'ai un code qui doit supprimer la ligne de texte comportant le mot prédéfini. Le problème est que le code génère l'erreur :
L'index était hors limites. Il ne doit pas être négatif et doit être inférieur à la taille de la collection. Nom du paramètre : index
A mon avis le RemoveAt(i) pose problème car il supprime une ligne et cela décale le n° des lignes et au final ca les suppriment toutes.
For Each files In My.Computer.FileSystem.GetFiles(TextBox1.Text, FileIO.SearchOption.SearchAllSubDirectories, "*txt")
Dim lines As List(Of String) = System.IO.File.ReadAllLines(files).ToList
If lines.Count = 0 Then Continue For ' ne passe pas à la ligne de dessous mais remonte pour traiter le prochain fichier
For i As Integer = 0 To lines.Count - 1
If lines(i).Contains("toto") Then
lines.RemoveAt(i)
End If
Next
Next
NHenry
Messages postés15113Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention22 avril 2024159 16 oct. 2010 à 13:10
Bonjour,
Pour le RTF, utilises le contrôle RTF (je ne me rappel plus du nom exacte) de .NET
Et la raison pour que les DocX ne sont pas pris en compte, c'est que ce ne sont pas des fichiers texte standards, mais avec une autre mise en forme, il vaut mieux essayer d'automatiser Word (Controle OLE ou Macro).