В чем разница в функциональности между StreamWriter.Flush() и StreamWriter.Close()?
Когда мои данные не были Поскольку запись в файл была проведена правильно, я добавил в конец кода Flush() и Close(). Однако я понял, что добавление либо Flush() или Close() позволило правильно записать данные.
Я не смог понять, что именно делает каждый из этих методов, когда читал документацию MSDN; Я только понял, что то или иное необходимо для правильной записи данных. Будем очень признательны за любые дальнейшие объяснения.
Где s — это строка, которую нужно записать, вот что мой код выглядит так:
StreamWriter sw = File.CreateText("TextOutput.txt");
sw.Write(s);
sw.Flush();
sw.Close();
Основываясь на отзывах на ответы, я переписал свой код в блок using, который реализует IDisposable и автоматически записывает поток в файл при удалении объекта:
using (StreamWriter sw = File.CreateText("TextOutput.txt"))
{
sw.Write(s);
}
Подробнее здесь: https://stackoverflow.com/questions/241 ... iter-close
В чем разница между StreamWriter.Flush() и StreamWriter.Close()? ⇐ C#
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
.NET 6.0 FILESTREAM | Streamwriter | BinaryWriter Deleting File на .close () или .dispose ()
Anonymous » » в форуме C# - 0 Ответы
- 7 Просмотры
-
Последнее сообщение Anonymous
-