2013-04-15 1 views
1

Je suis en train d'enregistrer un certain nombre de formes différentes dans un fichier texte, actuellement je:File.WriteAllText question

  • Température
  • Vent
  • pluie
  • Nuage

Le problème que je rencontre est qu'il enregistre seulement les données "Cloud". Est-il possible de sauvegarder toutes les informations sur la soumission et de les séparer par une virgule, un tiret ou simplement un espace?

C'est le code que je suis actuellement en utilisant:

private void button2_Click(object sender, RoutedEventArgs e) 
    { 

     File.WriteAllText("C:\\WeatherSpotter.txt", tempC.Text); 
     File.WriteAllText("C:\\WeatherSpotter.txt", tempF.Text); 
     File.WriteAllText("C:\\WeatherSpotter.txt", windMPH.Text); 
     File.WriteAllText("C:\\WeatherSpotter.txt", windKM_Textbox.Text); 
     File.WriteAllText("C:\\WeatherSpotter.txt", Cloud_ComboBox.Text); 


    } 

Répondre

3

File.WriteAllText remplace le contenu du fichier. Vous voulez File.AppendText(), qui fait exactly what it says on the tin.
Notez que vous pouvez ou ne souhaitez pas que le premier appel soit toujours WriteAllText(). Ou, mieux encore, concaténer tout cela en une seule chaîne et appeler WriteAllText() une seule fois.

1

Chaque fois que vous appelez File.WriteAllText, vous remplacez le fichier existant. Vous devriez plutôt utiliser une fonction d'ajout telle que File.AppendText() ou ouvrir le fichier, en écrivant chacune des lignes, puis en le fermant. Vous pouvez également utiliser StringBuilder ou quelque chose pour construire le contenu complet du fichier.

Il y a tellement d'options, assurez-vous simplement de vérifier comment la méthode que vous choisissez gère le fichier (quel mode/permissions il utilise).