当前位置:   article > 正文

《.Net 基础系列》- IO操作

.net io操作

File类

创建一个文件

File.Create(@"d:\1.txt");

拷贝一个文件

File.Copy(@"d:\1.txt",@"d:\2.txt");

判断一个文件是否存在

File.Exists(@"d:\1.txt");

删除一个文件(即便文件不存在 也不会报异常)

File.Delete(@"d:\1.txt");

读取一个文件内容

  1. //返回string
  2. File.ReadAllText("path",Encoding.Default);
  3. //返回string[]
  4. File.ReadAllLines("path",Encoding.Default);
  5. //返回byte[]
  6. File.ReadAllBytes("path");

把文本写入到文件

  1. File.WriteAllText("path","string");
  2. File.WriteAllLines("path",new string[4],Encoding.Default);
  3. File.WreteAllBytes("path",new byte[5]);
  4. File.AppendAllText();

FileStream类

  1. static void Copy(string source, string target)
  2. {
  3. using (FileStream fsReader = new FileStream(source, FileMode.OpenOrCreate, FileAccess.Read))
  4. {
  5. using (FileStream fsWrite = new FileStream(target, FileMode.OpenOrCreate, FileAccess.Write))
  6. {
  7. byte[] buffer = new byte[1024 * 1024 * 50];
  8. while (true)
  9. {
  10. int i = fsReader.Read(buffer, 0, 1024 * 1024);
  11. if (i <= 0)
  12. {
  13. break;
  14. }
  15. fsWrite.Write(buffer, 0, i);
  16. }
  17. }
  18. }
  19. }

Path类

对文件或目录的路径进行修改

  1. //D:\a\b\c\1.md
  2. string s1 = Path.ChangeExtension(@"D:\a\b\c\1.txt", "md");

将两个路径合并

  1. //D:\a\b\c\1.txt
  2. string s2 = Path.Combine(@"D:\a\b\c", "1.txt");

得到文件的路径名

  1. //D:\a\b\c
  2. string s3 = Path.GetDirectoryName(@"D:\a\b\c\1.txt");

得到文件的扩展名

  1. //.txt
  2. string s4 = Path.GetExtension(@"D:\a\b\c\1.txt");

得到文件的路径的文件名部分

  1. //1.txt
  2. string s5 = Path.GetFileName(@"D:\a\b\c\1.txt");

得到去除扩展名的文件名

  1. //1
  2. string s6 = Path.GetFileNameWithoutExtension(@"D:\a\b\c\1.txt");

得到文件的全路径。可以根据相对路径获得绝对路径

  1. //D:\a\b\c\1.txt
  2. string s7 = Path.GetFullPath(@"D:\a\b\c\1.txt");

得到一个唯一的临时文件名

  1. //C:\Users\1744\AppData\Local\Temp\tmp3285.tmp
  2. string s8 = Path.GetTempFileName();

得到临时文件夹的路径

  1. //C:\Users\1744\AppData\Local\Temp\
  2. string s9 = Path.GetTempPath();

StreamReader类

  1. using (StreamReader sr=new StreamReader(@"d:\Users\kim\Desktop\1.txt",Encoding.Default))
  2. {
  3. while(!sr.EndOfStream){
  4. Console.WriteLine(sr.ReadLine());
  5. }
  6. }

StreamWriter类

  1. using (StreamWriter sw = new StreamWriter(@"d:\Users\kim\Desktop\2.txt",true))
  2. {
  3. sw.Write("我爱你");
  4. }

Directory类

创建文件夹

Directory.CreateDirectory(@"C:\a");

删除目录(recursive表示是否递归删除,如果recursive为false则只能删除空目录)

void Delete(string path, bool recursive)

判断目录是否存在

bool Exists(string path)

得到一个目录下的子目录(通配符查找目录下的子目录,可以搜索到隐藏文件)

string[] GetDirectories(string path, string searchPattern, SearchOption searchOption)    

得到一个目录下的文件(通配符查找目录下的文件)

string[] GetFiles(string path, string searchPattern, SearchOption searchOption) 

得到目录的父目录(Directory.Move("c:\a",@"c:\bc"))

DirectoryInfo GetParent(string path)

剪切文件夹

Directory.Move("c:\a",@"c:\bc")

 

转载于:https://my.oschina.net/kimisme/blog/1603210

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/367269
推荐阅读
相关标签
  

闽ICP备14008679号