C#遍历文件夹构造文件树

时间:2022-01-08 12:27:30
  1. private void Form1_Load(object sender, EventArgs e)   
  2.        {   
  3.            TreeNode root = new TreeNode();   
  4.            root.Text = "目录";   
  5.            GetFiles(@"E:\Tools", root);   
  6.            treeView1.Nodes.Add(root);   
  7.   
  8.        }   
  9.   
  10.   
  11.        private void GetFiles(string filePath, TreeNode node)   
  12.        {   
  13.            DirectoryInfo folder = new DirectoryInfo(filePath);   
  14.            node.Text = folder.Name;   
  15.            node.Tag = folder.FullName;   
  16.               
  17.            FileInfo[] chldFiles = folder.GetFiles("*.*");   
  18.            foreach (FileInfo chlFile in chldFiles)   
  19.            {   
  20.                TreeNode chldNode = new TreeNode();   
  21.                chldNode.Text = chlFile.Name;   
  22.                chldNode.Tag = chlFile.FullName;   
  23.                node.Nodes.Add(chldNode);   
  24.            }   
  25.   
  26.            DirectoryInfo[] chldFolders = folder.GetDirectories();   
  27.            foreach (DirectoryInfo chldFolder in chldFolders)   
  28.            {   
  29.                TreeNode chldNode = new TreeNode();   
  30.                chldNode.Text = folder.Name;   
  31.                chldNode.Tag = folder.FullName;   
  32.                node.Nodes.Add(chldNode);   
  33.                GetFiles(chldFolder.FullName, chldNode);   
  34.            }   
  35.               
  36.        }