Reutilizando um fluxo de arquivos

No passado, sempre usei um objeto FileStream para escrever ou reescrever um arquivo inteiro, após o qual fecharia o fluxo imediatamente. No entanto, agora estou trabalhando em um programa no qual desejo manter um FileStream aberto para permitir que o usuário mantenha o acesso ao arquivo enquanto estiver trabalhando entre salvamentos. (Veja meupergunta anterior)

Estou usando o XmlSerializer para serializar minhas classes para um arquivo XML e de. Mas agora estou mantendo o FileStream aberto para ser usado para salvar (re-serializado) minha instância de classe posteriormente. Há alguma consideração especial que preciso fazer se estiver reutilizando o mesmo fluxo de arquivos repetidamente, em vez de usar um novo fluxo de arquivos? Preciso redefinir o fluxo para o início entre os salvamentos? Se um salvamento posterior for menor em tamanho que o salvamento anterior, o FileStream deixará os bytes restantes do arquivo antigo e, assim, criará um arquivo corrompido? Preciso fazer algo para limpar o arquivo para que ele se comporte como se eu estivesse gravando um arquivo totalmente novo a cada vez?

questionAnswers(5)

yourAnswerToTheQuestion