在临时文件被删除之前复制它

时间:2011-06-13 16:05:24

标签: c# .net

我有一个想法是编写一些有用的代码,以便最近下载的临时文件(如安装文件和其他媒体文件)可以在被删除之前复制到安全的位置。

string dir = "c:\\Users\\neal\\appdata\\Local\\Temp";

string newdir = "D:\\";

var directory = new DirectoryInfo(dir);

var myFile = (from f in directory.GetFiles()
              orderby f.LastAccessTime descending
              select f).First();

var myDir = (from f in directory.GetDirectories()
             orderby f.LastAccessTime descending
             select f).First();

myFile.CopyTo(newdir, true);

上述方法实际上并不起作用。而且我不确定为什么。我猜每个文件可能没有访问权限(安装文件)。

那里有任何想法或任何其他逻辑吗?

1 个答案:

答案 0 :(得分:3)

我绝对同意已有经过验证的解决方案,但如果您希望在代码中实现某些功能,请查看FileSystemWatcher http://msdn.microsoft.com/en-us/library/system.io.filesystemwatcher.aspx

这将通知您的程序您正在观看的目录的更改,以便您采取行动。