1

我正在编写一个应用程序,它的内存中可能有相当多的数据。我不想将数据临时写入磁盘,因为可能有更多数据要写入,我可以附加数据,但我不想遇到任何文件损坏问题。

是否有任何好的教程或受信任的方法来描述 Windows 程序通常如何使用临时文件?我希望能够在发生灾难(例如重新启动或断电)时恢复数据。

4

3 回答 3

0

通常,如果应用程序只需要临时不可恢复的文件访问权限,它们会将其临时文件写入 %TEMP%,但是,您最好将它们写入您在此处创建的自己文件夹中的用户目录。该文件夹通常与用户在弹出“保存”对话框时选择的位置相同。重要的一点是为文件提供唯一的命名方案和文件扩展名,以将它们与用户创建的文件区分开来(甚至将它们放在自己的隐藏目录中)。

于 2009-07-27T21:33:15.667 回答
0

这听起来像是 SQLite 列出的几个适当用途

  • 申请文件格式
  • 临时磁盘文件的替换
  • 内部或临时数据库
于 2009-07-27T21:47:19.570 回答
0

您没有提到正在使用的语言,但如果您使用 C 或 C++,内存映射文件可能是一个选项。它们可以帮助减少内存占用并显着提高应用程序的性能。

这可能有助于确定这是否适合您。

http://msdn.microsoft.com/en-us/library/ms810613.aspx

看来内存映射文件支持即将出现在您附近的 .NET 中。

http://blogs.msdn.com/bclteam/archive/2009/05/22/what-s-new-in-the-bcl-in-net-4-beta-1-justin-van-patten.aspx

于 2009-07-27T22:26:37.867 回答