首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

删除回收站下面的所有文件,出现不明白的有关问题。大牛请来赐教!

2012-03-18 
删除回收站下面的所有文件,出现不明白的问题。大牛请来赐教!!我获取回收站下面的所有文件,但是获取出来的文

删除回收站下面的所有文件,出现不明白的问题。大牛请来赐教!!
我获取回收站下面的所有文件,但是获取出来的文件有些问题。名称不一样,不明白是为什么。。。
有大牛愿意来解释下吗?
如图一(获取文件显示在控件上面的列表和文件名称):

如图二(为回收站文件本应的名称)


--------------------------------------------
代码如下:

C# code
if (treeView1.Nodes.Count > 0)                treeView1.Nodes.Clear();            treeView1.CheckBoxes = true;            treeView1.Nodes.Add("0", "回收站");            string MyPath = @"C:\Recycled";            string[] Dirs = null;            string[] Files = null;            Files = Directory.GetFiles(MyPath);            if (Files != null)            {                foreach (string file in Files)                {                    string tmp = file.Substring(file.LastIndexOf(@"\") + 1);                    TreeNode SubNode = new TreeNode(file);                    treeView1.Nodes[0].Nodes.Add(SubNode);                }            }


[解决办法]
回收站下的文件全部被重命名了,如果要看原来的文件名,有点难度,看微软能提供什么样的接口了。
[解决办法]
由于Windows在把文件移至回收站时把文件名给改了,所以还需要找回原来的文件名。原来的文件名可以从RECYCLED目录下的INFO2文件中找。INFO2是一个二进制文件,每一个被删除的文件在INFO2文件中有一段记录(800字节),其中可以找到文件名,其他的信息都不是ASCII字符,我们也不用关心。而且文件名按顺序排列,第一个文件名就是DC1.*文件原来的文件名,后缀名保持不变。如果被删除的是目录,在RECYCLED下就有一个叫DC????的目录,用同样的方法可以找回原来的目录名。

热点排行