欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C# 對文件與文件夾的操作包括刪除、移動與復(fù)制

 更新時間:2012年11月14日 08:50:19   作者:  
在.Net中,對文件(File)和文件夾(Folder)的操作可以使用File類和Directory類,也可以使用FileInfo類和DirectoryInfo類,本文將詳細(xì)介紹,需要的朋友可以參考
在.Net中,對文件(File)和文件夾(Folder)的操作可以使用File類和Directory類,也可以使用FileInfo類和DirectoryInfo類。文件夾(Folder)是只在Windows操作系統(tǒng)中使用的名詞。在操作系統(tǒng)的理論中,人們更習(xí)慣于使用目錄(Directory)這個名詞?;蛟S微軟為了有朝一日將.Net移植到其他的操作系統(tǒng)中(實(shí)際上也有很多人也在做著這個項目),所以還是以Directory來命名操作文件夾的類。

File類和Directory類都是靜態(tài)類。使用它們的好處是不需要初始化對象。如果你對某一個文件或文件夾只進(jìn)行一次操作,那你最好使用該靜態(tài)類的靜態(tài)方法,比如File.Move,F(xiàn)ile.Delete等等。如果你需要對一個文件或文件夾進(jìn)行多次操作,那最好還是使用FileInfo和DirectoryInfo類。因?yàn)镕ile類和Directory是靜態(tài)類,所以你每次對一個文件或文件夾進(jìn)行操作之前,它們都需要對該文件或文件夾進(jìn)行一些檢查,比如authentication。如果使用FileInfo類和DirectoryInfo類,只在初始化類的對象時進(jìn)行相關(guān)的檢查工作,也就是說只需要做一次,所以如果你需要對某個文件或文件夾進(jìn)行多次操作,那最好使用FileInfo類和DirectoryInfo類。

下面的這段代碼演示了如何獲得文件夾的信息,包括獲得文件夾下的子文件夾,以及文件夾下的文件。這里使用了DirectoryInfo 類來完成,當(dāng)然你也可以使用Directory靜態(tài)類。
復(fù)制代碼 代碼如下:

void DisplayFolder()
{
string folderFullName = @"c:\temp";
DirectoryInfo theFolder = new DirectoryInfo(folderFullName);
if (!theFolder.Exists)
throw new DirectoryNotFoundException("Folder not found: " + folderFullName);
// list all subfolders in folder
Console.WriteLine("Subfolders:");
foreach (DirectoryInfo subFolder in theFolder.GetDirectories())
{
Console.WriteLine(subFolder.Name);
}
// list all files in folder
Console.WriteLine();
Console.WriteLine("Files:");
foreach (FileInfo file in theFolder.GetFiles())
{
Console.WriteLine(file.Name);
}
}

下面演示了如何使用FileInfo類來獲得文件的相關(guān)信息,包括文件的創(chuàng)建日期,文件的大小等等。當(dāng)然你同樣也可以使用File靜態(tài)類來完成。
復(fù)制代碼 代碼如下:

void DisplayFileInfo()
{
string folderFullName = @"c:\temp";
string fileName = "New Text Document.txt";
string fileFullName = Path.Combine(folderFullName, fileName);
FileInfo theFile = new FileInfo(fileFullName);
if (!theFile.Exists)
throw new FileNotFoundException("File not found: " + fileFullName);
Console.WriteLine(string.Format("Creation time: {0}", theFile.CreationTime.ToString()));
Console.WriteLine(string.Format("Size: {0} bytes", theFile.Length.ToString()));
}

下面的代碼分別使用了File類和FileInfo類來演示如何刪除文件
復(fù)制代碼 代碼如下:

void DeleteFile1()
{
string fileToBeDeleted = @"c:\temp\New Text~ Document (3).txt";
if (File.Exists(fileToBeDeleted))
{
File.Delete(fileToBeDeleted);
}
}
void DeleteFile2()
{
string fileToBeDeleted = @"c:\temp\New Text~ Document (3).txt";
FileInfo file = new FileInfo(fileToBeDeleted);
if (file.Exists)
{
file.Delete();
}
}

下面的代碼分別使用了Directory類和DirectoryInfo類來演示如何刪除文件夾
復(fù)制代碼 代碼如下:

void DeleteFolder1()
{
string folderToBeDeleted = @"c:\temp\test";
if (Directory.Exists(folderToBeDeleted))
{
// true is recursive delete:
Directory.Delete(folderToBeDeleted, true);
}
}

void DeleteFolder2()
{
string folderToBeDeleted = @"c:\temp\test";
DirectoryInfo folder = new DirectoryInfo(folderToBeDeleted);
if (folder.Exists)
{
folder.Delete(true);
}
}

下面的代碼分別使用了File類和FileInfo類來演示如何移動文件
復(fù)制代碼 代碼如下:

void MoveFile1()
{
string fileToMove = @"c:\temp\New Text Document.txt";
string fileNewDestination = @"c:\temp\test.txt";
if (File.Exists(fileToMove) && !File.Exists(fileNewDestination))
{
File.Move(fileToMove, fileNewDestination);
}
}

void MoveFile2()
{
string fileToMove = @"c:\temp\New Text Document.txt";
string fileNewDestination = @"c:\temp\test.txt";
FileInfo file = new FileInfo(fileToMove);
if (file.Exists)
{
file.MoveTo(fileNewDestination);
}
}

下面的代碼分別使用了Directory類和DirectoryInfo類來演示如何移動文件夾
復(fù)制代碼 代碼如下:

void MoveFolder1()
{
string folderToMove = @"c:\temp\test";
string folderNewDestination = @"c:\temp\test2";
if (Directory.Exists(folderToMove))
{
Directory.Move(folderToMove, folderNewDestination);
}
}

void MoveFolder2()
{
string folderToMove = @"c:\temp\test";
string folderNewDestination = @"c:\temp\test2";
DirectoryInfo folder = new DirectoryInfo(folderToMove);
if (folder.Exists)
{
folder.MoveTo(folderNewDestination);
}
}

下面的代碼分別使用了File類和FileInfo類來演示如何復(fù)制文件
復(fù)制代碼 代碼如下:

void CopyFile1()
{
string sourceFile = @"c:\temp\New Text Document.txt";
string destinationFile = @"c:\temp\test.txt";
if (File.Exists(sourceFile))
{
// true is overwrite
File.Copy(sourceFile, destinationFile, true);
}
}

void CopyFile2()
{
string sourceFile = @"c:\temp\New Text Document.txt";
string destinationFile = @"c:\temp\test.txt";
FileInfo file = new FileInfo(sourceFile);
if (file.Exists)
{
// true is overwrite
file.CopyTo(destinationFile, true);
}
}

相關(guān)文章

  • C#域名解析簡單實(shí)現(xiàn)方法

    C#域名解析簡單實(shí)現(xiàn)方法

    這篇文章主要介紹了C#域名解析簡單實(shí)現(xiàn)方法,可實(shí)現(xiàn)針對域名解析顯示出主機(jī)名、IP地址、別名等功能,需要的朋友可以參考下
    2015-07-07
  • C#中方法的直接調(diào)用、反射調(diào)用與Lambda表達(dá)式調(diào)用對比

    C#中方法的直接調(diào)用、反射調(diào)用與Lambda表達(dá)式調(diào)用對比

    這篇文章主要介紹了C#中方法的直接調(diào)用、反射調(diào)用與Lambda表達(dá)式調(diào)用對比,本文著重講解了方法的三種調(diào)用方法以及它們的性能對比,需要的朋友可以參考下
    2015-06-06
  • C#從命令行讀取參數(shù)的方法

    C#從命令行讀取參數(shù)的方法

    這篇文章主要介紹了C#從命令行讀取參數(shù)的方法,實(shí)例分析了C#命令行讀取參數(shù)的實(shí)現(xiàn)技巧與操作流程,需要的朋友可以參考下
    2015-04-04
  • Unity3D實(shí)現(xiàn)扭動擠壓瀏覽效果

    Unity3D實(shí)現(xiàn)扭動擠壓瀏覽效果

    這篇文章主要為大家詳細(xì)介紹了Unity3D實(shí)現(xiàn)扭動擠壓瀏覽效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-02-02
  • C#設(shè)置MDI子窗體只能彈出一個的方法

    C#設(shè)置MDI子窗體只能彈出一個的方法

    這篇文章主要介紹了C#設(shè)置MDI子窗體只能彈出一個的方法,很實(shí)用的技巧,需要的朋友可以參考下
    2014-08-08
  • C#操作注冊表的方法

    C#操作注冊表的方法

    這篇文章介紹了C#操作注冊表的方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-05-05
  • C#實(shí)現(xiàn).net頁面之間傳值傳參方法匯總

    C#實(shí)現(xiàn).net頁面之間傳值傳參方法匯總

    這篇文章主要介紹了C#實(shí)現(xiàn).net頁面之間傳值傳參方法,實(shí)例匯總了幾類常見的傳值傳參的方法,非常具有實(shí)用價值,需要的朋友可以參考下
    2014-10-10
  • 淺談C#中對引用類型的誤解

    淺談C#中對引用類型的誤解

    這篇文章主要介紹了淺談C#中對引用類型的誤解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • C#/VB.NET實(shí)現(xiàn)創(chuàng)建PDF/UA文件的示例代碼

    C#/VB.NET實(shí)現(xiàn)創(chuàng)建PDF/UA文件的示例代碼

    PDF/UA,即Universally?Accessible?PDF,該格式的PDF文件是于2012年8月以ISO標(biāo)準(zhǔn)14289-1發(fā)布的、具有普遍可訪問的PDF文檔標(biāo)準(zhǔn)。本文將用C#實(shí)現(xiàn)DF/UA文件的創(chuàng)建,需要的可以參考一下
    2022-08-08
  • C#實(shí)現(xiàn)DataList里面嵌套DataList的折疊菜單

    C#實(shí)現(xiàn)DataList里面嵌套DataList的折疊菜單

    這篇文章主要介紹了C#實(shí)現(xiàn)DataList里面嵌套DataList的折疊菜單,以實(shí)例形式詳細(xì)分析了DataList嵌套實(shí)現(xiàn)折疊菜單所涉及的JavaScript、HTML與C#相關(guān)使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-11-11

最新評論