遍历文件夹的规则制定
之前发过一个贴,问如何设计一个程序可以扫描文件夹,找出放错位置的文件并指示出来。
原帖如下
http://topic.csdn.net/u/20120423/11/a0aefad8-c2cd-44c3-b32d-7f5f888c7e29.html
现在我遍历文件夹看的可以了,代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.IO;
class ListAllFilesDemo
{
public static void Main()
{
Console.Write("请输入要查询的目录: ");
string dir = Console.ReadLine();
try
{
ListFiles(new DirectoryInfo(dir));
Console.ReadKey();
}
catch (IOException e)
{
Console.WriteLine(e.Message);
}
}
public static void ListFiles(FileSystemInfo info)
{
if (!info.Exists) return;
DirectoryInfo dir = info as DirectoryInfo;
//不是目录
if (dir == null) return;
FileSystemInfo[] files = dir.GetFileSystemInfos();
for (int i = 0; i < files.Length; i++)
{
FileInfo file = files[i] as FileInfo;
//是文件
if (file != null)
Console.WriteLine(file.FullName + "\t " + file.Length);
//对于子目录,进行递归调用
else
ListFiles(files[i]);
}
}
}
这样控制台可以显示出所有文件夹内有文件的路径,结果像这样:
请输入要查询的目录: D:\test
D:\test\1\a.txt 0
D:\test\2\22\bb.txt 0
D:\test\2\b.txt 0
D:\test\3\c.txt 0
现在要进行下一步了,如何制定相应的规则,让程序可以找出放错位置的文件夹,求各位大侠给思路,该怎么弄?
谢谢
------解决方案--------------------
http://topic.csdn.net/u/20120420/16/f1397532-8831-434a-bada-934e02395636.html