2010-11-09 9 views
1

Je voudrais que mon fichier texte créé soit ajouté. Dès maintenant, il est recréé à chaque fois. Ce qui n'est pas bon puisque je veux créer un fichier texte délimité par des virgules avec entrées stockées.Ajouter au fichier texte

private void button1_Click(object sender, EventArgs e) 
    { 
     writetext(); 
     reset(); 


    } 
    public void writetext() 
    { 
     using (TextWriter writer = File.CreateText("filename.txt")) 
     { 
      writer.WriteLine("First name, {0} Lastname, {1} Phone,{2} Day of birth,{3}", textBox1.Text, textBox2.Text, maskedTextBox1.Text, textBox4.Text); 


     } 

    } 
    public void reset() 
    { 
     textBox1.Text = ""; 
     textBox2.Text = ""; 
     textBox3.Text = ""; 
     textBox4.Text = ""; 
    } 
+0

Vous devriez lire les réponses que vous obtenez. –

+0

Et vous devriez lire la question que je posais. J'ai créé le fichier texte mais maintenant il est réécrit à chaque fois. Je veux que l'information soit ajoutée au fichier texte. – user770022

+0

Et AppendText était déjà suggéré dans la réponse précédente. –

Répondre

5

Il est facile, essayez ceci:

public void writetext() 
    { 
     using (TextWriter writer = new StreamWriter("filename.txt", true)) // true is for append mode 
     { 
      writer.WriteLine("First name, {0} Lastname, {1} Phone,{2} Day of birth,{3}", textBox1.Text, textBox2.Text, maskedTextBox1.Text, textBox4.Text); 


     } 

    } 

Merci,
Vamyip

======================== ============================================= =====
Si vous trouvez une réponse correcte, veuillez la marquer comme réponse.

0

Il existe une méthode

File.AppendText() 

.

2

Au lieu d'appeler File.CreateText, vous devez appeler File.AppendText. Cependant, vous devriez vérifier d'abord si le fichier existe en utilisant File.Exists

Voici quelques pseudo-code:

if (File.Exists(path)) 
    writer = File.AppendText(path); 
else 
    writer = File.CreateText(path); 
0

Vous pouvez également:

File.AppendAllLines("filename.txt", new string[] { 
    string.Format("First name, {0} Lastname, {1} Phone,{2} Day of birth,{3}", 
     textBox1.Text, textBox2.Text, maskedTextBox1.Text, textBox4.Text) 
}); 

Cela vous permettra d'économiser en utilisant Writer altoghether et gérer tout dans les coulisses.

Questions connexes