.net - 使用后删除临时文件

标签 .net windows temporary-files

我需要在我的 Windows Forms .NET 3.5 应用程序中使用一些临时文件。这些文件在外部应用程序中打开,当然可以比我自己的程序运行更长时间。

是否有任何最佳实践来确保随时清理这些临时文件,以避免用不再需要的“垃圾”文件填满用户的硬盘?还是 Windows 也会自动处理这个问题?

一个很好的例子是任何邮件客户端:当您在任何应用程序中打开附件时,它通常被写入一个打开的临时文件。有没有办法弄清楚这些文件是如何管理清理的?

Google 向我展示了很多手动清理临时目录的清理和调整工具,但我不想强制用户这样做。 :-)

最佳答案

在 .NET 中,您可以使用 <a href="http://msdn.microsoft.com/en-us/library/system.codedom.compiler.tempfilecollection.aspx" rel="noreferrer noopener nofollow">TempFileCollection</a>用于管理一组要由您的应用程序清理的临时文件的类(请注意,它隐藏在 CodeDom 命名空间中)。显然,您不能删除不属于您的任何文件,因为这些文件可能仍被另一个应用程序打开(删除它们可能会导致严重问题)。

关于.net - 使用后删除临时文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/659351/

相关文章:

python - 在 Python 中使用 webbrowser 显示临时 html 文件

java - 临时文件、单实例锁和进程终止 (Java)

c++ - C++ 中的 Windows 编程

.net - VB.Net WinForms ClickOnce 安装创建的快捷方式没有目标选项卡

.net - 每个堆栈跟踪行末尾的那些 + 符号是什么?

.net - System.Timers.Timer 与 System.Threading.Timer

python - pip在windows中安装密码学

windows - 进程.exit(0) : output disappears?

guid - Windows 中的 PID 分配策略/使用 PID 命名临时文件

c# - 使用 Umbraco Base 返回 Json 而不是 XML