日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > C# >内容正文

C#

C#文件操作基础之File类和FileInfo类

發(fā)布時(shí)間:2023/12/10 C# 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C#文件操作基础之File类和FileInfo类 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

文件和I/O流的差異:


文件是一些具有永久存儲(chǔ)及特定順序的字節(jié)組成的一個(gè)有序的、具有名稱的集合。
因此對(duì)于文件,我們經(jīng)常想到文件夾路徑,磁盤存儲(chǔ),文件和文件夾名等方面。
I/O流提供一種后備存儲(chǔ)寫入字節(jié)和從后備存儲(chǔ)讀取字節(jié)的方式。
后備存儲(chǔ)能夠?yàn)槎喾N存儲(chǔ)媒介之中的一個(gè)。


System.IO命名空間中的經(jīng)常使用類:


BinaryReader ? ? 用特定的編碼將基元數(shù)據(jù)類型讀作二進(jìn)制值
BinaryWriter ? ? 以二進(jìn)制形式將基元類型寫入流,并支持用特定的編碼寫入字符串
Directory ? ? ? ?公開用于創(chuàng)建、移動(dòng)和枚舉通過文件夾和子文件夾的靜態(tài)方法,無法被繼 ? ? ? ? ? ? ? ? ?承
DirectoryInfo ? ?公開用于創(chuàng)建、移動(dòng)和枚舉文件夾和子文件夾的實(shí)例方法,無法被繼承
File ? ? ? ? ? ? 提供創(chuàng)建、復(fù)制、刪除、移動(dòng)和打開文件的靜態(tài)方法,協(xié)助創(chuàng)建 ? ? ? ? ? ? ? ? ? ? ?FileStream對(duì)象
FileInfo ? ? ? ? 提供創(chuàng)建、復(fù)制、刪除、移動(dòng)和打開文件的實(shí)例方法,而且?guī)椭鷦?chuàng)建 ? ? ? ? ? ? ? ? ?FileStream對(duì)象
FileStream ? ? ? 公開以文件為主的Stream,既支持同步讀寫操作,也支持異步讀寫操 ? ? ? ? ? ? ? ? ?作
FileSystemInfo ? 為FileInfo和DirectoryInfo對(duì)象提供基類
StreamReader ? ? 實(shí)現(xiàn)一個(gè)TextReader,使其以一種特定的編碼從字節(jié)流中讀取字符
StreamWriter ? ? 實(shí)現(xiàn)一個(gè)TextWriter,使其以一種特定的編碼向流中寫入字符






1.File類:


Copy ? ? ? ? ? ? ? ? ?將現(xiàn)有文件拷貝到新文件

Create ? ? ? ? ? ? ? ?在指定路徑中創(chuàng)建文件
Delete ? ? ? ? ? ? ? ?刪除指定的文件,假設(shè)指定的文件不存在,則不引起異常
Exists ? ? ? ? ? ? ? ?確定指定的文件是否存在
Move ? ? ? ? ? ? ? ? ?將指定文件移到新位置,并提供指定新文件名稱的選項(xiàng)
Open ? ? ? ? ? ? ? ? ?打開指定路徑上的FileStream
GetCreationTime ? ? ? 返回指定文件或文件夾的創(chuàng)建日期和時(shí)間
OpenRead ? ? ? ? ? ? ?打開現(xiàn)有文件進(jìn)行讀取
OpenText ? ? ? ? ? ? ?打開現(xiàn)有UTF-8編碼文本文件以進(jìn)行讀取
OpenWrite ? ? ? ? ? ? 打開現(xiàn)有文件進(jìn)行寫入




2.FileInfo類:

Directory ? ? ? 獲取父文件夾的實(shí)例

Exists ? ? ? ? ?獲取指示文件是否存在的值

FullName ? ? ? ?獲取文件夾或文件的完整文件夾

Length ? ? ? ? ?獲取當(dāng)前文件的大小

Name ? ? ? ? ? ?獲取文件名稱



3.File類和FileInfo類的基本操作方法


注意:

因?yàn)镕ile類中的全部方法都是靜態(tài)的,所以假設(shè)僅僅想運(yùn)行一個(gè)操作,那么使用File類中方法的效率比使用對(duì)應(yīng)的FileInfo類中的方法可能更高


File類中的方法都是靜態(tài)方法,在使用時(shí)須要對(duì)全部方法都運(yùn)行安全檢查。因此假設(shè)打算多次重用某個(gè)對(duì)象,可考慮改用FileInfo類中的對(duì)應(yīng)方法,由于不總是須要安全檢查。




(1)推斷文件是否存在Exists方法


返回bool型,假設(shè)path為空或者沒有權(quán)限,則返回false

File:推斷C盤根文件夾下有沒有test.txt文件:

File.Exists("C:\\test.txt")


FileInfo:

FileInfo fileinfo = new FileInfo("C:\\test.txt")

if(fileinfo.Exists){}




(2)創(chuàng)建文件用Create方法


File類的Create方法有4中重載方法:

public static FileStream Create(string path)

public static FileStream Create(string path,int bufferSize)

public static FileStream Create(string path,int bufferSize,FileOptions options)

public static FileStream Create(string path,int bufferSize,FileOptions options,FileSecurity fileSecurity)


File類Create方法參數(shù)說明

path ? ? ? ? ? ? ? 文件名稱

bufferSize ? ? ? ? 用于讀取和寫入文件的已放入緩沖區(qū)的字節(jié)數(shù)

options ? ? ? ? ? ?FileOptions值之中的一個(gè),它描寫敘述怎樣創(chuàng)建或改寫該文件

fileSecurity ? ? ? FileSecurity值之中的一個(gè),它確定文件的訪問控制和審核安全性


File類

File.Create("C:\\test.txt")


FileInfo類:

FileInfo fileinfo = new FileInfo("C:\\test.txt")

fileinfo.Create();




(3)拷貝文件用File類的Copy方法以及FileInfo類的CopyTo方法


File類的Copy方法或者FileInfo類的CopyTo方法

File類的Copy方法有兩種重載方式

public static void Copy(string sourceFileName,string destFileName)

public static void Copy(string sourceFileName,string destFileName,bool overwrite)

sourceFileName表示要復(fù)制的文件,destFileName表示目標(biāo)文件的名稱,不能是文件夾,假設(shè)是第一種重載,則目標(biāo)文件參數(shù)不能是現(xiàn)有文件

overwrite表示能否夠改寫目標(biāo)文件


將C盤根文件夾下的test.txt文本文件拷貝到D盤根文件夾下:

(這邊注意措辭,說明D盤根文件夾下是沒有test.txt文件的)

File.Copy("C:\\test.txt","D:\\test.txt")


FileInfo類的CopyTo方法也有兩種重載方式

public FileInfo CopyTo(string destFileName)

public FileInfo CopyTo(string destFileName,bool overwrite)


FileInfo fileinfo = new FileInfo("C:\\test.txt");

fileinfo.CopyTo("D:\\test.txt",true);




(4)移動(dòng)文件用File類的Move方法和FileInfo類的MoveTo方法


File類-Move方法-

public static?void?Move(string sourceFileName,string destFileName)

File.Move("C:\\test.txt","D:\\test.txt")


FileInfo類-MoveTo方法-publicvoid?MoveTo(string destFileName)

FileInfo fileinfo = new FileInfo("C:\\test.txt");

fileinfo.MoveTo("D:\\test.txt");




(5)刪除文件用Delete方法


File類-Delete方法-public staticvoid?Delete(string path)

File.Delete("C:\\test.txt")


FileInfo類-Delete方法-publicvoid?Delete(string path)

FileInfo fileinfo = new FileInfo("C:\\test.txt");

fileinfo.Delete("D:\\test.txt");


轉(zhuǎn)載于:https://www.cnblogs.com/zfyouxi/p/4261539.html

總結(jié)

以上是生活随笔為你收集整理的C#文件操作基础之File类和FileInfo类的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。