资源简介
使用C#编写的获取某一文件夹下的目录树结构,使用递归的方法查找该文件夹下的所有文件夹和文件,并存到自定义类tree下
代码片段和文件信息
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Newtonsoft.Json;
using System.IO;
using System.Collections.Generic;
using System.Collections;
namespace 获取目录树
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender EventArgs e)
{
string path = Application.StartupPath + @“\“;
DirectoryInfo rootDir = new DirectoryInfo(path);
tree newtree = getTrees(rootDir);
}
long z = 1;//id计数
public class tree //自己定义一个类用于存储树结构
{
public long id;
public string text;//节点名字
public tree[] children;//子树
}
public tree getTrees(DirectoryInfo rootdir)
{
long temp = z;
tree rootTree = new tree();
rootTree.id = z;
rootTree.text = rootdir.Name;
DirectoryInfo[] firstchild = rootdir.GetDirectories();//获取文件夹下所有的子文件夹
FileInfo[] allFile = rootdir.GetFiles();//获取文件夹下所有的子文件
ArrayList newFile = new ArrayList();
for (int i = 0; i < allFile.Length; i++)//进行文件过滤
{
string name = allFile[i].Name;
if (name.Contains(“.dbf“) || name.Contains(“.prj“) || name.Contains(“.sbn“) || name.Contains(“.sbx“) || name.Contains(“shp.xml“) || name.Contains(“.shx“))//筛选文件类型
{
continue;
}
newFile.Add(allFile[i]);
}
rootTree.children = new tree[firstchild.Length + newFile.Count];//子树
for (int i = 0; i < firstchild.Length; i++)
{
tree sonTree = new tree();
z = Convert.ToInt64(temp.ToString() + “1“) + i;
sonTree = getTrees(firstchild[i]);//把文件夹下的文件夹拿来进行递归 新的子树
rootTree.children[i] = sonTree;
}
if (firstchild.Length == 0)
{
z = Convert.ToInt64(temp.ToString() + “1“);
}
//rootTree.children = new tree[allFile.Length];
for (int j = 0; j < newFile.Count; j++)
{
tree son = new tree();
FileInfo fi = ((FileInfo)newFile[j]);
son.text = fi.Name;
son.id = z + j + firstchild.Length;
rootTree.children[j + firstchild.Length] = son;
}
z = Convert.ToInt64(temp.ToString() + “1“);
return rootTree;
}
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 187 2017-09-27 15:37 获取目录树\获取目录树\App.config
文件 654848 2017-03-20 20:02 获取目录树\获取目录树\bin\Debug\Newtonsoft.Json.dll
文件 0 2017-09-27 15:39 获取目录树\获取目录树\bin\Debug\文件夹1\新建文本文档.txt
文件 9216 2018-08-10 14:59 获取目录树\获取目录树\bin\Debug\获取目录树.exe
文件 187 2017-09-27 15:37 获取目录树\获取目录树\bin\Debug\获取目录树.exe.config
文件 26112 2018-08-10 14:59 获取目录树\获取目录树\bin\Debug\获取目录树.pdb
文件 22984 2018-08-10 14:59 获取目录树\获取目录树\bin\Debug\获取目录树.vshost.exe
文件 187 2017-09-27 15:37 获取目录树\获取目录树\bin\Debug\获取目录树.vshost.exe.config
文件 490 2018-04-12 07:35 获取目录树\获取目录树\bin\Debug\获取目录树.vshost.exe.manifest
文件 3010 2017-09-27 15:53 获取目录树\获取目录树\Form1.cs
文件 2008 2017-09-27 15:42 获取目录树\获取目录树\Form1.Designer.cs
文件 5817 2017-09-27 15:42 获取目录树\获取目录树\Form1.resx
文件 863 2017-09-27 15:37 获取目录树\获取目录树\obj\Debug\DesignTimeResolveAssemblyReferences.cache
文件 7064 2018-08-10 14:59 获取目录树\获取目录树\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache
文件 0 2017-09-27 15:37 获取目录树\获取目录树\obj\Debug\TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
文件 0 2017-09-27 15:37 获取目录树\获取目录树\obj\Debug\TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
文件 0 2017-09-27 15:37 获取目录树\获取目录树\obj\Debug\TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
文件 855 2018-08-10 14:59 获取目录树\获取目录树\obj\Debug\获取目录树.csproj.FileListAbsolute.txt
文件 975 2017-09-27 15:44 获取目录树\获取目录树\obj\Debug\获取目录树.csproj.GenerateResource.Cache
文件 10626 2017-09-27 15:44 获取目录树\获取目录树\obj\Debug\获取目录树.csprojResolveAssemblyReference.cache
文件 9216 2018-08-10 14:59 获取目录树\获取目录树\obj\Debug\获取目录树.exe
文件 180 2018-08-10 14:59 获取目录树\获取目录树\obj\Debug\获取目录树.Form1.resources
文件 26112 2018-08-10 14:59 获取目录树\获取目录树\obj\Debug\获取目录树.pdb
文件 180 2018-08-10 14:59 获取目录树\获取目录树\obj\Debug\获取目录树.Properties.Resources.resources
文件 527 2017-09-27 15:37 获取目录树\获取目录树\Program.cs
文件 1350 2017-09-27 15:37 获取目录树\获取目录树\Properties\AssemblyInfo.cs
文件 2882 2017-09-27 15:37 获取目录树\获取目录树\Properties\Resources.Designer.cs
文件 5612 2017-09-27 15:37 获取目录树\获取目录树\Properties\Resources.resx
文件 1102 2017-09-27 15:37 获取目录树\获取目录树\Properties\Settings.Designer.cs
文件 249 2017-09-27 15:37 获取目录树\获取目录树\Properties\Settings.settings
............此处省略15个文件信息
- 上一篇:flights.csv
- 下一篇:用C#实现的一个学生成绩管理系统
相关资源
- 用C#实现的一个学生成绩管理系统
- C#读取RS232串口扫描枪
- C#的皮尔逊Ⅲ型曲线计算
- C# 编写的绘图板(可绘了直线,矩形
- C#动态获取局域网中所有在线的IP地址
- C# 图片比对 图片查找
- C#和台达PLC通信
- 用C#编写的新闻发布系统
- C#编程多种方法求矩阵的特征值的计算
- C# 测试内存泄露.zip
- C#通过服务端和GPRS通讯
- C#小型超市管理系统+SQL数据库
- c#员工管理系统
- c#贪吃蛇 用c#语言编写
- C#操作word文档 C#实现Word中表格信息读
- c# scoket异步通信代码
- 基于C#的2D太阳、地球、月亮运动轨迹
- c# 绘制3D可旋转旋转矩形
- C#连接PostgreSql需要的Npgsql.dll和Mono.S
- C#UDP通信+文件传输
- C#图书管理系统125481
- 医院管理系统c#和sql数据库
- 国密SM2_SM3加密解密,加签验签操作
- c#写的画图程序有整个工程文件和源码
- c# 全站防止sql注入
- C# CAD 画图工具
- c# 做成数据库生成 nhibernate映射文件程
- c#接收发送can数据
- C# 键盘
- C# 语音 真人语音
评论
共有 条评论