J'aimerais ajouter une nouvelle ligne avec du texte à mon fichier date.txt, mais au lieu de l'ajouter au fichier date.txt existant, l'application crée un nouveau fichier date.txt.
TextWriter tw = new StreamWriter("date.txt");
// write a line of text to the file
tw.WriteLine(DateTime.Now);
// close the stream
tw.Close();
Je voudrais ouvrir le fichier txt, ajouter du texte, le fermer et plus tard, après avoir cliqué sur quelque chose: ouvrir le fichier date.txt, ajouter du texte et le refermer.
Donc je peux avoir:
Bouton enfoncé: txt ouvert -> ajouté l'heure actuelle, puis fermez-le. Un autre bouton enfoncé, txt ouvert -> ajout du texte "OK" ou "NON OK" dans la même ligne, puis fermez-le à nouveau.
Donc, mon fichier txt ressemblera à ça:
2011-11-24 10:00:00 OK
2011-11-25 11:00:00 NOT OK
Comment puis-je faire ceci? Merci!
Vous pouvez le faire facilement en utilisant
File.AppendAllText("date.txt", DateTime.Now.ToString());
Si vous avez besoin de newline
File.AppendAllText("date.txt",
DateTime.Now.ToString() + Environment.NewLine);
Quoi qu'il en soit, si vous avez besoin de votre code, procédez comme suit:
TextWriter tw = new StreamWriter("date.txt", true);
avec le second paramètre indiquant d'ajouter au fichier.
Vérifiez la syntaxe ici StreamWriter.
Aucune nouvelle ligne:
File.AppendAllText("file.txt", DateTime.Now.ToString());
et ensuite pour obtenir une nouvelle ligne après OK:
File.AppendAllText("file.txt", string.Format("{0}{1}", "OK", Environment.NewLine));
Pourquoi ne pas le faire avec un appel de méthode:
File.AppendAllLines("file.txt", new[] { DateTime.Now.ToString() });
qui fera la nouvelle ligne pour vous, et vous permettra d'insérer plusieurs lignes à la fois si vous le souhaitez.
var Line = textBox1.Text + "," + textBox2.Text;
File.AppendAllText(@"C:\Documents\m2.txt", Line + Environment.NewLine);