class Program
{
//遍历目录名含有M00到M11的目录
//生成文件目录树(去除文件名中含有scc\Designer\designer\resx的文件)
//生成的文件保存在D:\\ak.txt
public static string[] folds = new string[] { "M00", "M01", "M02", "M03", "M04", "M05", "M06", "M07", "M08", "M09", "M10", "M11" };
public static StringBuilder sb = new StringBuilder();
static void Main(string[] args)
{
DirectoryInfo di = new DirectoryInfo(@"D:\xxxx\xxxx\xxxx\xxxx\UI");
FindFile(di);
Console.WriteLine("生成完成");
Console.ReadKey();
}
static void FindFile(DirectoryInfo di)
{ DirectoryInfo[] dis = di.GetDirectories();
for (int j = ; j < dis.Length; j++)
{
//如果目录中含有M00-M11 则进行读取文件名的操作
var fullName = dis[j].FullName;
var numForLine = fullName.LastIndexOf("\\")+;
var tureName = fullName.Substring(numForLine);
var cutFullName = tureName.Substring(,);
bool exists = folds.Contains(cutFullName);
if (exists)
{
Console.WriteLine("目录:" + dis[j].FullName);
sb.Append(tureName + "\r\n");
//获取文件名
FileInfo[] fis = dis[j].GetFiles();
for (int i = ; i < fis.Length; i++)
{
var filefullName = fis[i].FullName;
var filenumForLine = filefullName.LastIndexOf("\\") + ;
var filetureName = filefullName.Substring(filenumForLine);
//scc
//Designer
//designer
//resx
if (!filetureName.Contains("Designer")&&!filetureName.Contains("designer") && !filetureName.Contains("scc") && !filetureName.Contains("resx"))
{
Console.WriteLine("文件:" + filetureName);
sb.Append(" |--" + filetureName + "\r\n");
} }
} FindFile(dis[j]);
}
Write(sb.ToString());
}
public static void Write(string txt)
{
FileStream fs = new FileStream("D:\\ak.txt", FileMode.Create);
//获得字节数组
byte[] data = System.Text.Encoding.Default.GetBytes(txt);
//开始写入
fs.Write(data, , data.Length);
//清空缓冲区、关闭流
fs.Flush();
fs.Close();
}
}

c# 生成文件目录树的更多相关文章

  1. windows cmd 生成文件目录树

    一.背景 之前逛GitHub的时候看到有大佬在描述项目结构的时候使用了一种文件目录树的格式 │ └─student_information_management_system │ │ ├─build ...

  2. windows下生成文件目录树

    1.命令提示: tree /? 2.显示当前目录下的目录树(不显示文件) tree 3.递归显示目录结构(显示文件,常用于项目说明) tree /F 4.将显示的内容重定向到txt tree > ...

  3. LinqToDB 源码分析——生成表达式树

    当我们知道了Linq查询要用到的数据库信息之后.接下就是生成对应的表达式树.在前面的章节里面笔者就已经介绍过.生成表达式树是事实离不开IQueryable<T>接口.而处理表达式树离不开I ...

  4. DELPHI TreeView 文件目录树和 设置节点图标 完整

        DELPHI TreeView 文件目录树和 设置节点图标   下载地址 http://download.csdn.net/detail/teststudio/6448293     需要制作 ...

  5. paip.tree 生成目录树到txt后的折叠查看

    paip.tree 生成目录树到txt后的折叠查看 作者Attilax ,  EMAIL:1466519819@qq.com  来源:attilax的专栏 地址:http://blog.csdn.ne ...

  6. 泛型方法动态生成表达式树 Expression

    public string GetGridJSON(TraderInfo model) { IQueryable<TraderInfo> Temp = db.TraderInfo; if ...

  7. C#递归生成HTML树,C#递归生成xml树

    C#递归生成HTML树 public StringBuilder str = new StringBuilder();   //定义一个字符串 private void get_navigation_ ...

  8. 基于window自带功能生成目录树

    在写文档时,生成目录树是非常有必要的,可以清晰明了地用图阐释一些事情. 1 生成目录树 1.1 方案1:操作繁(只显示文件夹) 1 - win + R 2 - 输入 “CMD” ,打开命令提示窗口“ ...

  9. OneThink生成分类树方法(list_to_tree)使用!

    具体方法: Application / Common / Common / function.php 下的 224行: function list_to_tree($list, $pk='id', $ ...

随机推荐

  1. day51—JavaScript绑定事件

    转换学开发,代码100天——2018-05-06 今天学习JavaScript的绑定事件.因为浏览器的原因绑定事件需要考虑兼容性问题. attachEvent     IE浏览器 ,ie9以上事件执行 ...

  2. 转战 rocketmq

    接触 kafka 有一段时间了,一个人的力量实在有限,国内 rocketmq 的生态确实更好,决定换方向. rocketmq 文档地址:http://rocketmq.cloud/zh-cn/docs ...

  3. Delphi XE2 之 FireMonkey 入门(16) - 滤镜: 实例测试

    窗体上需要 TImage.TOpenDialog 和六个按钮. unit Unit1; interface uses   System.SysUtils, System.Types, System.U ...

  4. github.com/oschwald/maxminddb-golang 安装报错

    安装 maxminddb-golang错误: dill@ubuntu-vm:~/workspace/go/src/github.com$ go get github.com/oschwald/maxm ...

  5. Java JDK安装教程以及JDK多版本间快速切换配置

    原本想自己写一篇,结果在网上发现一篇写的特别好的博文,大家可以去原网址围观浏览加点赞, 只是搬运工+迷弟. 原文地址:https://blog.csdn.net/qq_38916130/article ...

  6. MYSQL的ACID

    原子性 (Atomicity) 原子性是指一个事务是一个不可分割的工作单位,其中的操作要么都做,要么都不做. 隔离性 (Isolation) 隔离性是指多个事务并发执行的时候,事务内部的操作与其他事务 ...

  7. type动态创建类

    在一些特定场合,需要动态创建类,比如创建表单,就会用到type动态创建类,举个例子: class Person(object): def __init__(self,name,age): self.n ...

  8. Git-第三篇廖雪峰Git教程学习笔记(2)回退修改,恢复文件

    1.工作区 C:\fyliu\lfyTemp\gitLocalRepository\yangjie 2.版本库 我们使用git init命令创建的.git就是我们的版本库.Git的版本库里存了很多东西 ...

  9. Java集合:Collection、List、Set、Map、泛型

    1.集合的理解和好处 2.集合的框架体系图 ★ 3.Collection接口的特点和使用 ★ 4.List和Set接口的特点和使用★ 5.List接口的实现类学习★ 6.Set接口的实现类学习★ 7. ...

  10. HDU 1494 题解(DP)

    题面: 跑跑卡丁车 Problem Description 跑跑卡丁车是时下一款流行的网络休闲游戏,你可以在这虚拟的世界里体验驾驶的乐趣.这款游戏的特别之处是你可以通过漂移来获得一种 加速卡,用这种加 ...