博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
File Path Directory总结
阅读量:5133 次
发布时间:2019-06-13

本文共 4275 字,大约阅读时间需要 14 分钟。

阅读目录

Path 对路径 字符串进行操作

  1. 获得后缀
  2. 能合并路径
  3. 获取文件名

 

Directory和DirectoryInfo  对目录进行操作

  1. 判断目录是否存在
  2. 创建目录
  3. 删除目录
  4. 获取目录下所有的子目录
  5. 获取目录下所有的子文件

 

File和FileInfo  对文件进行操作

  1. 读文件
  2. 写文件
  3. 追加文件
  4. 判断文件是否存在
  5. 创建文件
  6. 删除文件

 

1、Path类

1 using System; 2 using System.IO;//目录和文件操作的名称空间 3 namespace _11_Path类 { 4     class Program { 5         static void Main(string[] args) { 6             string path = "c:\\abc\\1.txt" ; 7             //注意这里是对路径字符串的操作  而不是真正的文件 “修改”支持字符串层面的,没有真的给文件改名 8             path = Path.ChangeExtension(path, "avi" );//ChangeExtension()修改文件后缀名1.avi   c:\\abc\\1.avi 9             //将两个路径合成一个路径,比用+好,可以方便解决是不是加斜线的问题,自动处理路径分隔符的问题10             path = Path.Combine("c:\\abc\\def\\" , "1.jpg"); //c:\abc\def\1.jpg11             //得到文件所在文件夹的位置 同样是从字符串的角度去处理12             path = Path.GetDirectoryName(path);//c:\abc13             path = Path.GetExtension(path);//扩展名 .txt14             path = Path.GetFileName(path);//文件名.后缀名 1.txt15             path = Path.GetFileNameWithoutExtension(path);//不含后缀的文件名 116             path = Path.GetFullPath("11-Path类.exe" );//文件全路径(相对文件的全路径 一般也不用此方法) F:\PIZIYIMAO\11-Path类\bin\Debug\11-Path类.exe17             path = Path.GetTempFileName();//临时文件夹保存路径  自动创建文件 C:\Documents and Settings\PIZIYIMAO\Local Settings\Temp\tmp5E.tmp18             path = Path.GetTempPath();//获取临时文件夹保存路径 C:\Documents and Settings\PIZIYIMAO\Local Settings\Temp\19             Console.WriteLine(path);20             Console.Read();21         }22     }23 }

 

2、操作目录类 Directory与DirectoryInfo

 

1 using System; 2 using System.IO; 3 namespace _12_Directory { 4     class Program { 5         static void Main( string[] args) { 6             DirectoryInfo dic = new DirectoryInfo( "c:\\abc" ); 7             //dic.Name; //获取文件名 8             //dic.FullName; //获取文件全路径  功能要比Directory强大 区别在于它是实例类 而后者是静态类 9             Directory .CreateDirectory("c:\\abc" ); //创建文件夹10             Directory .CreateDirectory("c:\\abc\\1\\2\\3\\4\\5\\6\\7" ); //连续创建多级文件夹11             if (Directory .Exists( "c:\\abc")) //判断是否存在文件夹12             {13                 Directory .Delete("c:\\abc" ); //如果存在则删除 如果文件夹为空能正常删除 不为空则会报错 "目录不是空的"14                 Directory .Delete("c:\\abc" , true); //true则指定 如果文件夹不为空 同样执行删除操作15             }16             string [] paths = Directory .GetDirectories( "c:\\abc"); //获取目录中所有子目录名称 注意只取下一级别 即c:\abc\1 如获取windows文件夹下所有文件夹路径可以使用此方法17             string [] paths2 = Directory .GetDirectories( "c:\\windows", "$*" );//以上方法重载实现  检索以$开头的文件18             string [] paths3 = Directory .GetDirectories( "c:\\abc", "*" , SearchOption .AllDirectories);//通配符查找文件夹中符合条件的文件 包括子级文件夹19             foreach (string path in paths) {20                 Console .WriteLine(path);21             }22             string [] files = Directory .GetFiles( "c:\\windows"); //遍历文件夹下的所有文件23             string [] files2 = Directory .GetFiles( "c:\\windows", "*.ini" , SearchOption .AllDirectories);//通配符查找目录下的文件 用法类似于GetDirectories24             foreach (string file in files2) {25                 Console .WriteLine(file);26             }27             //目录操作最重要的就是 GetFiles和GetDirectories方法28             Directory .GetParent("c:\\abc\\1\\2\\3\\4\\5\\6\\7" ); //返回7文件夹的父级目录 c:\abc\1\2\3\4\5\629             Console .Read();30         }31     }32 }

 

3、文件类File

 

1 using System; 2 using System.IO; 3 using System.Text; 4 namespace _13_File { 5     class Program { 6         static void Main( string[] args) { 7             //file静态类 使用file类时需要注意文件默认编码的使用  如果编码不正确  文件中会显示乱码 8             File .AppendAllText("c:\\1.txt" , "gb1232"); //向c:\\1.txt文件中追加 内容“gb2312” 9             //如果存在写入文件10             if (File .Exists( "c:\\1.txt")) {11                 File .WriteAllText("c:\\1.txt" , "写入中文有时会出现乱码 需要使用第三个参数 指定Encoding文件的编码格式 Default为默认格式" ,Encoding .Default);//WriteAllText是彻底的覆盖 而AppendAllText是追加12             }13             //File.ReadAllText();//读取文件不再列举  以下方法查看文档不再举例14             //string[] ReadAllLines(string path) //读取文本文件到字符串数组中15             //string ReadAllText(string path) //读取文本文件到字符串中16             //WriteAllLines(string path,string[] contents),//将字符串数组逐行保存到文件path中,会覆盖旧内容。17             FileInfo fi = new FileInfo( "c:\\2.txt" );//实例化的类  功能比file要强大18             fi.AppendText(); //它有很多的方法 和属性 自己查看 文档19             Console .Read();20         }21     }22 }

 

转载于:https://www.cnblogs.com/ASsss/p/10566960.html

你可能感兴趣的文章
nginx --rhel6.5
查看>>
Eclipse Python插件 PyDev
查看>>
selenium+python3模拟键盘实现粘贴、复制
查看>>
第一篇博客
查看>>
typeof与instanceof的区别
查看>>
网站搭建(一)
查看>>
SDWebImage源码解读之SDWebImageDownloaderOperation
查看>>
elastaticsearch
查看>>
postgreSQL 简单命令操作
查看>>
Spring JDBCTemplate
查看>>
Radon变换——MATLAB
查看>>
第五章笔记
查看>>
Iroha and a Grid AtCoder - 1974(思维水题)
查看>>
gzip
查看>>
转负二进制(个人模版)
查看>>
LintCode-Backpack
查看>>
查询数据库锁
查看>>
[LeetCode] Palindrome Number
查看>>
我对于脚本程序的理解——百度轻应用有感
查看>>
SQL更新某列包含XX的所有值
查看>>