C#递归实现文件遍历

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication3
{
    class Program
    {
        static void Main(string[] args)
        {
             string rootpath = "C:\\Users\\Eric\\Desktop\\jm20";
             sendFiles(rootpath);
             Console.ReadKey();
           
        }
        static  void sendFiles(string rootpath) //递归实现文件的遍历
        {
            string[] subPaths = System.IO.Directory.GetDirectories(rootpath);//得到所有子目录

            foreach (string path in subPaths)
            {
                sendFiles(path);//对每一个子目录做与根目录相同的操作:即找到子目录并将当前目录的文件名存入List
            }
            string[] files = System.IO.Directory.GetFiles(rootpath);//得到目录下的所有文件
            int size = files.Length;
            foreach (string file in files)
            {
                string filenew = file.Remove(0, "C:\\Users\\Eric\\Desktop\\jm20".Length + 1);  //所有文件的相对路径
                Console.WriteLine("FileName:{0}", filenew);               
            }
        }
    }
}

 

posted @ 2013-10-13 21:46  zxwAAA  阅读(550)  评论(0编辑  收藏  举报