этот конструктор streamwriter удалит test.txt, если он уже существует.поэтому каждый раз, когда исполняется этот фрагмент кода, он удаляет созданный ранее файл text.txt.вместо этого используйте перегрузку для конструктора streamwriter , который добавляет дополнительный bool для добавления к существующему файлу test.txt вместо его замены:
StreamWriter fileWriter = new StreamWriter("test.txt", true);
в качестве альтернативы, вы можете пойти с File.AppendAllLines метод для добавления вашего текста в файл.тогда вам не нужно беспокоиться о закрытии дескриптора файла, а само имя метода четко определяет, что произойдет.для меня это было бы более удобно и не так неясно, как перегруженный конструктор потокового редактора.
или, в качестве альтернативы, вы могли бы пойти на каркас ведения журнала, такой как NLog .в этом случае NLog позаботится обо всех ваших файловых операциях, так что тогда вы не будете беспокоиться.Кроме того, вы можете настроить NLog для записи в любое удобное для вас место, например, в ваш файл или, как вы уже упоминали, в окно вывода отладки, в журнал событий и т. д., также вы можете делать ставки на любые файловые операции, которые, вероятно, намного большеэффективнее, чем ваша собственная реализация.