c# - 文件关闭问题窗口

标签 c# windows-7

我们正在使用 File.WriteAllBytes 将数据写入磁盘。但是,如果在我们关闭文件的同时重新启动,Windows 会将 null 添加到文件中。这似乎发生在 Windows 7 上。因此,一旦我们返回文件,我们就会在文件中看到空值。有没有办法防止这种情况。 Windows 是否会在一定时间后关闭其内部句柄,是否可以强制立即关闭?

最佳答案

取决于你想要什么样的行为;您可以按照 0A0D 的建议将其放入 UPS 中;但除此之外,您还可以使用 Windows 的 Vista+ Transactional NTFS功能。这允许您以原子方式写入文件系统。所以在你的情况下; 没有会被写入而不是不正确的数据。它还不是 .NET Framework 的直接组成部分;但是可以在网上找到大量托管包装器。

有时没有数据比错误数据更好。当您的应用程序再次启动时;它可以看到文件丢失;它可以从中断的地方“继续”;取决于您的应用程序的作用。

关于c# - 文件关闭问题窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6668059/

相关文章:

AggregateException 中的 C# InnerException

c# - C# 中的 C++ 非托管 DLL

c# - Web Api 脚手架 - 运行所选代码生成器时出错

windows - Windows7可以配置虚拟网络接口(interface)吗?

Windows 7 上的安卓开发

c# - 无法将带 [] 的索引应用于类型为 'method group' SinglePageApp1 的表达式。获取 ["/"] 南希

c# - 查找未使用的枚举成员

c# - 如何获取应用程序的AppData VirtualStore路径?

javascript - 如何在 Windows 7 上进行 Internet Explorer 7 测试和 javascript 调试?

Windows 7 中的 Javacv UnsatisfiedLinkError