前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家!人工智能学习网站
前言:
大家好,我是上位机马工,硕士毕业4年年入40万,目前在一家自动化公司担任软件经理,从事C#上位机软件开发8年以上!我们在开发C#程序的过程中经常需要对文件夹进行处理,本文就来详细介绍。
1、创建目录
string path = "d:\\test\\dir";
Directory.CreateDirectory(path); //创建一个新的目录。如果目录的上级目录不存在,则也会创建上级目录;如果目录已经存在则啥也不干
2、删除目录
删除目录时,这里第二个参数指示是否删除目录的子目录,如果该参数值为true,则删除子目录,否组仅当目录为空时才删除目录。
bool recursive = true;//是否递归处理
Directory.Delete(path, recursive);
3、判断目录是否存在
if (Directory.Exists(path))//确定目录是否存在。
{
Console.WriteLine($"目录已存在");
}
else
{
Console.WriteLine($"目录不存在");
}
4、获取子目录名称
string[] subDirectories = Directory.GetDirectories(path);// 返回指定目录中的子目录名称的数组
5、获取目录下所有文件名称
string[] subFiles = Directory.GetFiles(path); //返回指定目录中的文件名称的数组
6、移动目录
string newPath = "d:\\test2";
Directory.Move(path, newPath); //将指定的目录及其所有子目录和文件移动到新位置。
7、返回指定目录的创建时间
DateTime datetimeCreate = Directory.GetCreationTime(path);// 返回指定目录的创建时间。
8、返回上次访问指定目录的时间
实际测试发现当我们新建文件、重命名文件、修改文件内容、删除文件内容时会更新这个属性
DateTime datetimeAccess = Directory.GetLastAccessTime(path);
9、返回上次写入指定目录的时间
实际测试发现当我们新建文件、重命名文件、修改文件内容、删除文件内容时会更新这个属性
DateTime datetimeWrite = Directory.GetLastWriteTime(path);
10、返回指定路径的父目录信息
所谓父目录也就是上层目录的信息。
DirectoryInfo directoryInfo = Directory.GetParent(path);
11、查找子目录名称的前两个名称是“板号”,第三个名称任意字符
就比如dir文件夹下的“板号_”这个文件夹,由于板号后面跟了一个字符"",这就符合要求,所以可以被找到,这里的?代表的就是任意字符。
D:\Test\dir\板号
string[] dirs = Directory.EnumerateDirectories(path, "板号?").ToArray();
12、查找子目录名称的前两个名称是“板号”,后面的名称任意长度和名字
就比如dir文件夹下的“板号_”、“板号123”这两个文件夹都是以“板号”作为开头,所以满足条件,这里的*代表的就是任意长度任意名字的字符。
D:\Test\dir\板号_
D:\Test\dir\板号123
string[] dirs2 = Directory.EnumerateDirectories(path, "板号*").ToArray();
13、查找文件名的前两个名称是“板号”,第三个名称任意
上面的介绍是查找满足特定条件的目录,这里的EnumerateFiles是查找满足特定条件的文件名,这里指的是文件名以“板号开头”第三个字符为任意字符的文件
string[] filess = Directory.EnumerateFiles(path, "板号?.txt").ToArray();
14、查找文件名的前两个名称是“板号”,后面的名称任意长度和名字
上面的介绍是查找满足特定条件的目录,这里的EnumerateFiles是查找满足特定条件的文件名,这里指的是文件名以“板号开头”后面的字符为任意字符的文件
string[] files2 = Directory.EnumerateFiles(path, "板号*").ToArray();
作者介绍
马工2017年硕士毕业,一直从事上位机软件开发工作,在我工作的第四年年薪突破了40万+,为了帮助跟我一样从底层出身的上位机软件工程师早日达到高级工程师的水平,早日找到30万+的工作,我根据多年项目经验,总结出了一系列可直接用于项目的C#上位机实战教程推荐给大家,目前在CSDN已经超过一千人订阅,如果你不甘贫庸,想像我一样早日拿到高薪,马工强烈推荐你早日学这套教程,雷军曾说这个世界上有99%的问题别人都遇到过,你要做的不是闷头干!而是找这个领域的专家问一下,这是最快速提升自己的方法!
年入30万+C#上位机实战必备教程推荐(点击下方链接即可访问文章)
1、《C#串口通信从入门到精通》
2、《C#与PLC通信从入门到精通 》
3、《C# Modbus通信从入门到精通》
4、《C#Socket通信从入门到精通 》
5、《C# MES通信从入门到精通》
6、《winform控件从入门到精通》