C#目录"玩"

Ada*_*m S 2 c# windows

简单问题在这里.我有一个C#程序需要将一些文件存储到硬盘驱动器上,但我不需要它们对最终用户有用,只能在程序可以读/写的某个地方.

是否有一个目录,我可以通过编程方式引用我的"文件空间游乐场" - 也就是说,我可以自由地读/写?

编辑:另外,如果我使用临时目录,文件保证有多长时间?我的程序仍在运行时,我不希望它们消失!

Tim*_*m C 8

我会使用应用程序数据目录.您可以使用以下内容来实现:

Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
Run Code Online (Sandbox Code Playgroud)

它是Windows中针对应用程序特定数据的首选位置,除非用户想要查找它,否则通常对用户隐藏.

  • @chaiguy:默认情况下,Windows中没有自动清理的文件夹. (3认同)

TLi*_*ebe 6

您可以使用可以获得的系统临时目录:

string tmpDir = System.IO.Path.GetTempPath();
Run Code Online (Sandbox Code Playgroud)

如果需要,可以在其下创建一个子文件夹.临时文件夹非常适合您不关心的文件.如果你想保留这些文件,你可以像Tim C和Graham Miller建议的那样使用ApplicationData文件夹.