C# 优雅地中止FileStream写入循环
我有一个使用FileStream将数据写入文件的循环。 在手术中,我想中止手术。 如果我刷新并关闭它,磁盘上将有一个部分文件。有没有办法关闭文件流并将其从系统中删除?(在相同的操作中。我知道我可以刷新关闭,然后自己删除它)如果您需要修改文件 在你的情况下,这可能是过分的,但你可以使用。如果需要中止,只需回滚事务,您修改的文件将返回到事务开始前的状态(如果在事务开始前不存在,则文件将完全消失)。即使您没有显式回滚(例如,由于断电),这也会起作用 或者,您可以通过写入不同的文件来模拟事务,然后通过用新文件替换旧文件来“提交”C# 优雅地中止FileStream写入循环,c#,filestream,C#,Filestream,我有一个使用FileStream将数据写入文件的循环。 在手术中,我想中止手术。 如果我刷新并关闭它,磁盘上将有一个部分文件。有没有办法关闭文件流并将其从系统中删除?(在相同的操作中。我知道我可以刷新关闭,然后自己删除它)如果您需要修改文件 在你的情况下,这可能是过分的,但你可以使用。如果需要中止,只需回滚事务,您修改的文件将返回到事务开始前的状态(如果在事务开始前不存在,则文件将完全消失)。即使您没有显式回滚(例如,由于断电),这也会起作用 或者,您可以通过写入不同的文件来模拟事务,然后通过用
否则(如果您只处理创建新文件,而不是修改现有文件)
在流关闭/释放后(如您所述),您可以删除
finally
块中的文件。好吧,不用费心刷新。是的,只需删除文件。我想就是这样(使用finally块删除部分文件)我不想使用NTFS事务,因为我不知道这将在哪个操作系统和哪个HD上运行。。。。我想没有一个“聪明的方法”来做这件事。。。。