.NET中的IO操作基础介绍
關于IO簡介
.NET中的IO操作,經常需要調用一下幾個類。
1.FileStream類???????
??????? 文件流類,負責大文件的拷貝,讀寫。
2.Path類??????????????????
??????? Path類中方法,基本都是對字符串(文件名)的操作,與實際文件沒多大關系。
3.File類???????????
????? File類可以進行一些對小文件拷貝、剪切操作,還能讀一些文檔文件。
4.Dirctory????????????
????? 目錄操作,創建文件、刪除目錄,獲取目錄下文件名等等。
Path類
1.ChangeExtension(path,".jpg")
改變文件后綴名!
2.Combine(s1,s2)
將兩個路徑連起來
3.獲取文件名的幾個方法?
1)Path.GetFileName(s1);? ?//獲取路徑中的文件名
2)Path.GetFileNameWithoutExtension(s1);? ?//獲取文件名,不包括后綴名!
3)Path.GetDirectoryName(s1)//獲取路徑中的目錄不包括文件名。
4)Path.GetExtension(s1);? //只獲取擴展名
4.GetFullPath("")
獲取完整路徑,根據相對路徑獲得絕對路徑。
5.臨時目錄?
1)GetTempPath()??? ?//獲取當前用戶的臨時目錄
2)GetTempFileName()??? //獲取一個隨機的文件名,并在臨時目錄下創建這個文件。
3)GetRandomFileName()? ?//僅獲取一個隨機文件名。
Directory類
1.創建目錄
Directory.CreateDirectory(@"目錄");
2.判斷某個目錄是否存在某文件
string path =@"路徑";
if(Directory.Exists(path))
{
}
3.刪除目錄
1)Directory.Delete(path);?//刪除空目錄? ,目錄下沒有文件了。
2)Directory.Delete(path,true);?//不管空不空,都刪!
3)如果沒有目錄就會報異常,最好用if(Directory.Exists(path))判斷一下。
4.移動文件目錄
重命名目錄也用這個來做。
Directory.Move(@"c:\a",@"c:\abc");
5.DirectoryInfo
可以把文件夾當作對象來使用
DirectoryInfo dirInfo = new DirectoryInfo(@"path");
6.獲取當前目錄下的所有直接子目錄 和 直接子文件
//獲取目錄下的直接子目錄
String[] dirs =Direcotory.GetDirectories(@"目錄");
//獲取目錄下的直接子文件
String[] files =Directory.GetFiles(@"目錄");
7.獲取當前目錄下的目錄和文件? 另一種方式
//獲取目錄下的直接子目錄
//String[] dirs =Direcotory.GetDirectories(@"目錄");
//獲取目錄下的直接子文件
//String[] files =Directory.GetFiles(@"目錄");
//—————————以上是6中的做法,他有一定性能上的問題。什么問題呢?—————————————
使用String[] dirs =Direcotory.GetDirectories(@"目錄");是必須要等獲取了整個string之后,才能遍歷這個集合。
如果希望,讀到一條處理一條。
建議使用Directory.EnumerateFile()
1)EnumerateFile返回的是一個實現了IEnumerable接口的集合。實際上使用了迭代器模式。
2)SearchOption.ALLDirctories參數,會讓.EnumerateFile()遍歷所有子目錄下的文件。
File類
1.拷貝
File.Copy("Source"," Target",true);
2.判斷是否存在?
File.Exists(@"Source") ;
3.剪切?
File.Move("Source","Targe");
4.創建?
File.Create("path");
5.刪除?
File.Delete("path");?//刪除,若沒有,不報錯!
6.讀操作?
1)File.ReadAllLines("path",Encoding.Default);? ?//返回一個string[]
2)File.ReadAllTest("path",Encoding.Default);??? //string
3)File.ReadAllBytes("path");
7.寫操作?
1)File.WriteAllLines("path",new string[4],Encoding.Default);//按行寫入一個文件中。
2)File.WriteAllText("path","string");
3)File.WriteAllBytes("path",new byte[4]);
4)File.AppendAllText();? ?//將string追加到文件中。
8.返回FileStream的快捷方式?
1)File.Open(string,FileMode);? ?//返回一個FileStream
2)File.OpenRead(string,FileMode);? //返回一個只讀的 FileStream
3)File.OpenWrite(string,FileMode);? //返回一個只寫的 FileStream
轉載于:https://www.cnblogs.com/mcad/p/4203550.html
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的.NET中的IO操作基础介绍的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 怎样设计接口?
- 下一篇: 一千行MySQL学习笔记