File.WriteAllText проблема

Я пытаюсь сохранить несколько различных форм в текстовом файле, в настоящее время у меня есть:

  • температура
  • ветер
  • дождь
  • облако

Проблема, которая у меня возникает, заключается в том, что она сохраняет только данные "облака". Есть ли способ, которым я могу сохранить всю информацию о представлении и разделить их запятой, тире или просто пробелом?

Это код, который я сейчас использую:

  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);


    }

2 ответа

Решение

File.WriteAllText заменяет содержимое файла.

Ты хочешь File.AppendText(), который делает именно то, что говорит на жестяной банке.
Обратите внимание, что вы можете или не хотите, чтобы первый звонок все еще был WriteAllText(),

Или, еще лучше, объединить все это в одну строку и вызвать WriteAllText() только однажды.

Каждый раз, когда вы вызываете File.WriteAllText Вы перезаписываете существующий файл. Вместо этого вы должны использовать функцию добавления, такую ​​как File.AppendText() или открыв файл, написав каждую из строк, затем закрыв его. Вы также можете использовать StringBuilder или что-то, чтобы построить все содержимое файла.

Вариантов так много, просто обязательно проверьте, как выбранный вами метод обрабатывает файл (какой режим / разрешения он использует).

Другие вопросы по тегам