首页 > 代码库 > 01-资料管理器(Directory/DirectoryInfo操作文件夹类)
01-资料管理器(Directory/DirectoryInfo操作文件夹类)
public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { DirectoryInfo demoDir = new DirectoryInfo("demo");//获取demo目录 DirectoryInfo[] direInfo = demoDir.GetDirectories();//获取demo文件夹下的所有直接子文件夹 foreach (DirectoryInfo item in direInfo)//把文件夹加到treeView上 { TreeNode tNode = treeView1.Nodes.Add(item.Name); LoadData(item.FullName, tNode);//item.FullName 获取全路径名称 } } private void LoadData(string path, TreeNode treeNode) { //1.SearchOption.TopDirectoryOnly 获取当前路径文件夹下的所有直接子文件,文件后缀 .txt string[] files = Directory.GetFiles(path, "*.txt", SearchOption.TopDirectoryOnly); foreach (string item in files)//把文件加到treeView上 { TreeNode nodeFile = treeNode.Nodes.Add(Path.GetFileName(item)); nodeFile.Tag = item;////每次绑定文件节点的时候,都把当前文件的完整路径绑定到Tag中。 } //2.获取当前路径下的所有直接子文件夹 string[] dirs = Directory.GetDirectories(path); foreach (string item in dirs) { TreeNode node = treeNode.Nodes.Add(Path.GetFileName(item));////Add方法的返回值就是,刚刚增加的这个节点。 LoadData(item, node); //递归调用方法自己。 } } private void treeView1_AfterSelect(object sender, TreeViewEventArgs e) { if (e.Node != null && e.Node.Tag != null) { textBox1.Text = File.ReadAllText(e.Node.Tag.ToString(), Encoding.Default); } } }
显示效果:
01-资料管理器(Directory/DirectoryInfo操作文件夹类)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。