IO基础操作(Path,Directory)
2021/9/14 23:09:27
本文主要是介绍IO基础操作(Path,Directory),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
IO基础操作(一.Path,Directory)
一.基本概念:
文件夹:
用来管理计算机文件的,每一个文件夹对应着磁盘的一个空间地址,没有符号没有扩展名。
文件:
一个具有符号的一组相关元素的有序序列。文件可以包含的内容十分的广泛。系统和用户都可以将具有一定功能的程序模块,数据等命名为一个文件。
流:
字节序列可用于对于后备数据的读写
二.IO命名空间的常用类:
FileInfo,Direcationary,DicInfo,Path,StreamWrite,StreamWrite,FileStream,MemoryStream,
MemoryStream,BufferedStream,BinaryReder,BinaryWriter,StringReader,StringWrite,Stream,
TextWriter,TextReader…
三。Path类的常用方法:
public void PathEx() { string path = @"d:\testFiles"; string path2 = @"test\file.txt"; Path.ChangeExtension(path2, "doc"); //改变文件的扩展名 string newPath = Path.Combine(path, path2); //进行路径的拼接 Path.GetExtension(path2); //获取文件的扩展名 Path.GetFileName(path2); //获取文件的扩展名 Path.GetFileNameWithoutExtension(path2);//获取不带扩展名的文件名字s Path.HasExtension(path2); //路径中是不是包含扩展名 Path.GetFullPath(newPath); //获取全路径 }
二.Directory操作:
Directory的使用:
(1)创建文件夹:
string path = @"d:\ABC\enf"; if (!Directory.Exists(path)) { Directory.CreateDirectory(path); }
(2)删除文件夹
Directory.Delete(path,false); //其中的false表示不删除文件夹中的子目录以及文件,如果为true的时候,如果包含子目录的时候就不能删除
(3)移动文件夹
Directory.Move(path1,path2);
(4)获取子目录的列表
string[] vs = Directory.GetDirectories(path);
(5)获取目录下所有的文件:
string[] Files = Directory.GetFiles(path);//获取该目录下的所有文件
DirectoryInfo的使用:
(1)递归加载某个目录下面的所有 的文件夹以及文件:
private void getChildDicsAndFiles(string path, List<string> dicList) { DirectoryInfo directoryInfo = new DirectoryInfo(path); DirectoryInfo[] directoryInfos = directoryInfo.GetDirectories(); FileInfo[] fileInfos = directoryInfo.GetFiles(); dicList.AddRange(fileInfos.Select(x => x.FullName)); foreach (var dic in directoryInfos) { dicList.Add(dic.FullName); getChildDicsAndFiles(dic.FullName, dicList) } }
(2)其他操作:这些操作其实和Directory中的方法是对应起来的,可以对比着来看;
public void DicInfoExample() { string path = @"d:\ABCD\TEST"; DirectoryInfo directoryInfo = new DirectoryInfo(path); directoryInfo.Create(); //创建子目录 directoryInfo.MoveTo(目标路径); directoryInfo.Delete(false); //有子目录不能删除 directoryInfo.Delete(true);//有子目录可以删除 }
总结:
以上就是我对于IO中路径以及文件夹操作的理解,后续还有其他相关的操作,欢迎大家指正!!
这篇关于IO基础操作(Path,Directory)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23增量更新怎么做?-icode9专业技术文章分享
- 2024-11-23压缩包加密方案有哪些?-icode9专业技术文章分享
- 2024-11-23用shell怎么写一个开机时自动同步远程仓库的代码?-icode9专业技术文章分享
- 2024-11-23webman可以同步自己的仓库吗?-icode9专业技术文章分享
- 2024-11-23在 Webman 中怎么判断是否有某命令进程正在运行?-icode9专业技术文章分享
- 2024-11-23如何重置new Swiper?-icode9专业技术文章分享
- 2024-11-23oss直传有什么好处?-icode9专业技术文章分享
- 2024-11-23如何将oss直传封装成一个组件在其他页面调用时都可以使用?-icode9专业技术文章分享
- 2024-11-23怎么使用laravel 11在代码里获取路由列表?-icode9专业技术文章分享
- 2024-11-22怎么实现ansible playbook 备份代码中命名包含时间戳功能?-icode9专业技术文章分享