В прошлом я всегда использовал объект FileStream для записи или перезаписи целого файла, после чего я сразу же закрою поток. Однако теперь я работаю над программой, в которой я хочу, чтобы FileStream был открыт, чтобы позволить пользователю сохранить доступ к файлу во время работы между ними. (См. Мой предыдущий вопрос).
Я использую XmlSerializer для сериализации моих классов в файле from и XML. Но теперь я держу FileStream открытым, чтобы использовать для сохранения (повторного сеанса) экземпляра класса позже. Есть ли какие-то особые соображения, которые мне нужно сделать, если я повторно использую один и тот же поток файлов снова и снова, в сравнении с использованием нового потока файлов? Нужно ли мне reset поток в начало между сохранениями? Если последующее сохранение меньше по размеру, чем предыдущее сохранение, FileStream оставляет оставшиеся байты из старого файла и, таким образом, создает поврежденный файл? Нужно ли мне что-то делать, чтобы очистить файл, поэтому он будет вести себя так, как будто я пишу совершенно новый файл каждый раз?