2013-06-29 2 views
0

Donc, la première ligne de mon fichier texte, je veux un en-tête qui contient un nombre de lignes de tous les enregistrements qui seront dans le fichier. Donc, s'il y a 1000 lignes dans ce fichier, je veux que la première ligne dise 1000. Comment puis-je faire cela? Je peux obtenir le nombre de lignes à afficher à la fin du fichier mais je le veux en haut.Comment mettre à jour la première ligne de texte dans un fichier texte dans VB.NET

+0

votre code postal comment vous obtenez pour afficher à la fin du fichier – Paparazzi

Répondre

3

en C# .Net:

var filepath = "/file/path"; 
var list = File.ReadAllLines(filepath).ToList(); 
list.Insert(0, String.Format("Records in this file: {0}", list.Count)); 
File.WriteAllLines(filepath, list); 

En VB.Net (je pense, je ne vraiment utiliser VB)

Dim filepath = "/file/path" 
Dim list = File.ReadAllLines(filepath).ToList() 
list.Insert(0, [String].Format("Records in this file: {0}", list.Count)) 
File.WriteAllLines(filepath, list) 
+0

ne fonctionne pas ... –

+0

Vous aurez pas besoin des crochets autour de cordes en VB. – JMK

+0

@TonyLarson Je ne sais pas ce qui est différent dans votre cas de test, mais ce code fonctionne dans mes tests. –

-2

Je ne sais pas si c'est ce que vous cherchez car cela va changer le texte de la première ligne pour afficher le nombre total de lignes.

Dim lncount As Integer = TextBox1.Lines.Length 
    TextBox1.SelectionStart = 0 
    TextBox1.SelectionLength = TextBox1.Lines.First.Length 
    TextBox1.SelectedText = lncount 
+0

Il ne pose pas de questions sur le nombre de lignes dans un TextBox, il pose des questions sur le nombre de lignes dans un fichier. –

+0

Oups. Eh bien, je suppose qu'un moyen très inefficace pour accomplir cela impliquerait l'utilisation d'une zone de texte invisible. Mettez le contenu du fichier là, mettez à jour la première ligne, puis remettez-les. – nebabc

Questions connexes