#c# #file-io #save
#c# #file-io #Сохранить
Вопрос:
Я сохраняю данные в файл каждые 60 секунд, я сохраняю их каждые 60 секунд нормально, но при этом удаляются предыдущие добавленные данные. Есть ли способ, которым это добавило бы к файлу, а не перезаписало его. И без использования диалогового окна сохранения, поскольку это делается в фоновом режиме.
Любая обратная связь приветствуется
Комментарии:
1. Почему бы не записать в режиме добавления, чтобы он добавлял вместо перезаписи?
2. не могли бы вы предоставить больше информации? пример кода был бы большим подспорьем. Неожиданный вывод: используйте
FileMode.Append
вместоCreate
Ответ №1:
Кажется, открытие файла в режиме добавления решит вашу проблему. http://msdn.microsoft.com/en-us/library/3zc0w663.aspx
Ответ №2:
Попробуйте,
using (StreamWriter writer = new StreamWriter(@"C:somefile.txt", true))
{
writer.WriteLine("Hello line..");
}
Ответ №3:
Укажите FileMode.Append
в FileStream
конструкторе.
Ответ №4:
Используйте метод File
класса AppendText
.
StreamWriter sw = File.AppendText("D:\Text.txt");
sw.WriteLine("Hello");
sw.WriteLine("World");
sw.WriteLine("Test");
sw.Flush();
sw.Close();
Ответ №5:
Вы можете использовать StreamWriter
with append
as true
в конструкторе.
Смотрите здесь.
Ответ №6:
ХОРОШО, поскольку я получаю ваш вопрос, у вас есть файл, и вы хотите сохранить в нем новые данные вместо его замены
Вы можете просто открыть его содержимое с помощью stream Reader. и добавить те данные, которые вы хотите вставить в файл, используя writer. не сохраняйте файл каждый раз, просто добавляйте данные в этот файл, чтобы, когда вы просто добавляете что-то к нему, это не перезаписывало этот файл.