在Windows中保存临时文件的最佳位置在哪里

时间:2009-08-07 20:53:36

标签: windows windows-vista

我正在忙着编写一个在windows下运行的应用程序

保存临时文件的正确位置在哪里?

7 个答案:

答案 0 :(得分:37)

如果您使用的是.NET,请使用Path.GetTempPath()。这将保证您使用分配给运行应用程序的用户的临时目录,无论其存储在何处。

如果您浏览文件系统,您会注意到有许多“临时”目录:

  • 〜\温度
  • 〜\的Windows \温度
  • 〜\ Users \用户名\应用程序数据\本地\温度

......还有更多。这些路径中的一些是依赖于操作系统的,并且不会出现在某些窗口风格上。因此,节省一些时间和麻烦,让.NET框架找出“临时”路径所在的位置。

答案 1 :(得分:12)

使用GetTempPath和可能GetTempFileName来确定临时文件的放置位置。这是获取文件临时位置的最可靠,最终用户友好且面向未来的方法。

答案 2 :(得分:6)

在临时目录?

使用GetTempPath或批处理文件%TEMP%

答案 3 :(得分:4)

使用GetTempPath API或编程环境的等效API。

答案 4 :(得分:4)

C:\ Temp不是一个好选择。

如果您使用.Net,请使用以下代码:

           string baseFolder = System.Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData);

        string cfgFolder = Path.Combine(baseFolder, "MyAppName");


        try
        {
            if (!Directory.Exists(cfgFolder))
            {
                Directory.CreateDirectory(cfgFolder);
            }
        }
        catch { } // If no access, not much we can do.

为中期存储应用数据提供场所,或者使用Path.GetTempPath()暂时存储数据。

答案 5 :(得分:3)

这取决于您使用的语言:

string tempFolder = System.IO.Path.GetTempPath();
例如,

将返回C#中的相应文件夹。

或者,如果必须,环境变量TEMP或TMP。

答案 6 :(得分:-3)

C:\ Documents and Settings \ username \ Application Data \ IsolatedStorage