如何遍历d盘,并且列出有层次所有文件 用C#如何遍历d盘,并且列出有层次所有文件,而且能够用来复制出来打印,希望代码能直接运行(我不懂修改) 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 for 循环递归自身easy 代码,不理会了~,仅顶==================================小小姑娘清早起床提着裤子上茅房茅房有人,不能再等只好拉在裤子上..................================================== /// <summary> /// 递归目录 /// </summary> private void AddFolder() { try { //this.folderBrowserDialog1.SelectedPath = ""; if (this.folderBrowserDialog1.ShowDialog() == DialogResult.OK) { string path = folderBrowserDialog1.SelectedPath; DirectoryInfo dinfo = new DirectoryInfo(path); FileSystemInfo finfo = dinfo as FileSystemInfo; ListFolderFiles(finfo); } } catch (Exception) { } } private void ListFolderFiles(FileSystemInfo fileinfo) { if (!fileinfo.Exists) return; DirectoryInfo dirinfo = fileinfo as DirectoryInfo; if (dirinfo == null) return; //不是目录 FileSystemInfo[] files = dirinfo.GetFileSystemInfos(); for (int i = 0; i < files.Length; i++) //遍历目录下所有文件、子目录 { FileInfo file = files[i] as FileInfo; if (file != null) // 是文件 { //操作 } else //是目录 { ListFolderFiles(files[i]); //对子目录进行递归调用 } } }接分接分 要我说,不如调用Tree命令,直接输出成文本,样子也挺好看。 楼上茅房有人,不能再等 -> 茅房有人,没有办法更押韵楼主参考: private void PathToNode(string APath, TreeNodeCollection AParentNode) { if (!Directory.Exists(APath)) return; string vText = Path.GetFileName(APath); if (vText.Length <= 0) vText = APath; TreeNode vTreeNode = AParentNode.Add(string.Format("[{0}]", vText)); string[] vDirectories = Directory.GetDirectories(APath); foreach (string vPath in vDirectories) PathToNode(vPath, vTreeNode.Nodes); string[] vFiles = Directory.GetFiles(APath); foreach (string vFile in vFiles) vTreeNode.Nodes.Add(Path.GetFileName(vFile)); } private void button4_Click(object sender, EventArgs e) { treeView1.BeginUpdate(); treeView1.Nodes.Clear(); try { PathToNode("D:", treeView1.Nodes); } finally { treeView1.EndUpdate(); } } c#全局bool变量怎么定义 asp.net中怎么在获取的系统时间上推迟一周,三月或者一年 打印问题 如何打印一张bmp的图片 C#语言 c#判断字符串路径问题 怎样找到PE文件? 我想调用资源管理器打开一个目录,请问该如何写代码? 容器成员操作失败,非常奇怪(泛型编程相关 web中的treeview How to DragDrop a Button? C# 用代码创建桌面快捷方式,win10不生效 请高手指点..关于留言板回复区域显示问题..帮小弟改改吧!! 控制换行符问题
easy 代码,不理会了~,仅顶==================================
小小姑娘
清早起床
提着裤子上茅房
茅房有人,不能再等
只好拉在裤子上..................
==================================
/// 递归目录
/// </summary>
private void AddFolder()
{
try
{
//this.folderBrowserDialog1.SelectedPath = "";
if (this.folderBrowserDialog1.ShowDialog() == DialogResult.OK)
{
string path = folderBrowserDialog1.SelectedPath;
DirectoryInfo dinfo = new DirectoryInfo(path);
FileSystemInfo finfo = dinfo as FileSystemInfo;
ListFolderFiles(finfo);
}
}
catch (Exception)
{
}
} private void ListFolderFiles(FileSystemInfo fileinfo)
{
if (!fileinfo.Exists) return;
DirectoryInfo dirinfo = fileinfo as DirectoryInfo;
if (dirinfo == null) return; //不是目录
FileSystemInfo[] files = dirinfo.GetFileSystemInfos();
for (int i = 0; i < files.Length; i++) //遍历目录下所有文件、子目录
{
FileInfo file = files[i] as FileInfo;
if (file != null) // 是文件
{
//操作
}
else //是目录
{
ListFolderFiles(files[i]); //对子目录进行递归调用
}
}
}
接分接分
茅房有人,不能再等 -> 茅房有人,没有办法
更押韵楼主参考:
private void PathToNode(string APath, TreeNodeCollection AParentNode)
{
if (!Directory.Exists(APath)) return;
string vText = Path.GetFileName(APath);
if (vText.Length <= 0) vText = APath;
TreeNode vTreeNode = AParentNode.Add(string.Format("[{0}]", vText)); string[] vDirectories = Directory.GetDirectories(APath);
foreach (string vPath in vDirectories)
PathToNode(vPath, vTreeNode.Nodes);
string[] vFiles = Directory.GetFiles(APath);
foreach (string vFile in vFiles)
vTreeNode.Nodes.Add(Path.GetFileName(vFile)); }
private void button4_Click(object sender, EventArgs e)
{
treeView1.BeginUpdate();
treeView1.Nodes.Clear();
try
{
PathToNode("D:", treeView1.Nodes);
}
finally
{
treeView1.EndUpdate();
}
}