C# 中的FileInfo
類用于處理及操作文件。它提供用于創(chuàng)建,刪除和讀取文件的屬性和方法。 它使用StreamWriter
類將文件寫(xiě)入文件。它在System.IO
命名空間中定義。
[SerializableAttribute]
[ComVisibleAttribute(true)]
public sealed class FileInfo : FileSystemInfo
下表列出FileInfo
類的構(gòu)造函數(shù)。
構(gòu)造函數(shù) | 描述 |
---|---|
FileInfo(String) | 它用于初始化FileInfo 類的新實(shí)例,該實(shí)例充當(dāng)文件路徑的包裝器。 |
下表列出FileInfo
類的屬性。
屬性 | 描述 |
---|---|
Attributes | 它用于獲取或設(shè)置當(dāng)前文件或目錄的屬性。 |
CreationTime | 它用于獲取或設(shè)置當(dāng)前文件或目錄的創(chuàng)建時(shí)間。 |
Directory | 它用于獲取父目錄的實(shí)例。 |
DirectoryName | 它用于獲取表示目錄完整路徑的字符串。 |
Exists | 它用于獲取一個(gè)值,指示文件是否存在。 |
FullName | 它用于獲取目錄或文件的完整路徑。 |
IsReadOnly | 它用于獲取或設(shè)置確定當(dāng)前文件是否為只讀的值。 |
LastAccessTime | 它用于獲取或設(shè)置從上一次訪問(wèn)當(dāng)前文件或目錄的時(shí)間。 |
Length | 它用于獲取當(dāng)前文件的字節(jié)數(shù)。 |
Name | 它用于獲取文件的名稱。 |
下表列出FileInfo
類中定義的方法。
方法 | 描述 |
---|---|
AppendText() | 它用于創(chuàng)建一個(gè)StreamWriter 類對(duì)象,將文本附加到FileInfo 的此實(shí)例所表示的文件中。 |
CopyTo(String) | 它用于將現(xiàn)有文件復(fù)制到新文件。 |
Create() | 它用于創(chuàng)建文件。 |
CreateText() | 它用于創(chuàng)建一個(gè)寫(xiě)入新文本文件的StreamWriter 類對(duì)象。 |
Decrypt() | 它用于解密由使用加密方法當(dāng)前帳戶加密的文件。 |
Delete() | 它用于永久刪除文件。 |
Encrypt() | 它用于加密文件,以便只有用于加密文件的帳戶才能對(duì)其進(jìn)行解密。 |
GetAccessControl() | 它用于獲取封裝訪問(wèn)控制列表(ACL)條目的FileSecurity 對(duì)象。 |
MoveTo(String) | 它用于將特定文件移動(dòng)到新的指定位置。 |
Open(FileMode) | 它用于以指定的模式來(lái)打開(kāi)文件。 |
OpenRead() | 它用于創(chuàng)建只讀FileStream 。 |
OpenText() | 它用于創(chuàng)建從現(xiàn)有文本文件使用UTF8編碼讀取的StreamReader 類。 |
OpenWrite() | 它用于創(chuàng)建只寫(xiě)FileStream 對(duì)象。 |
Refresh() | 它用于刷新對(duì)象的狀態(tài)。 |
Replace(String,String) | 用于使用當(dāng)前FileInfo 對(duì)象描述的文件替換指定文件的內(nèi)容。 |
ToString() | 它用于將路徑作為字符串返回。 |
using System;
using System.IO;
namespace CSharpProgram
{
class Program
{
static void Main(string[] args)
{
try
{
// Specifying file location
string loc = "F:\\worksp\\csharp\\fileinfo.txt";
// Creating FileInfo instance
FileInfo file = new FileInfo(loc);
// Creating an empty file
file.Create();
Console.WriteLine("File is created Successfuly");
}
catch (IOException e)
{
Console.WriteLine("Something went wrong: " + e);
}
}
}
}
執(zhí)行上面示例代碼,得到以下結(jié)果 -
File is created Successfuly
可以在F:\worksp\csharp目錄內(nèi)看到有一個(gè)文件:fileinfo.txt被創(chuàng)建。如下圖中所示 -
using System;
using System.IO;
namespace CSharpProgram
{
class Program
{
static void Main(string[] args)
{
try
{
// Specifying file location
string loc = "F:\\worksp\\csharp\\fileinfo.txt";
// Creating FileInfo instance
FileInfo file = new FileInfo(loc);
// Creating an file instance to write
StreamWriter sw = file.CreateText();
// Writing to the file
sw.WriteLine("This text is written to the file by using StreamWriter class.");
sw.Close();
}
catch (IOException e)
{
Console.WriteLine("Something went wrong: " + e);
}
}
}
}
執(zhí)行上面示例代碼后,打開(kāi)F:\worksp\csharp\fileinfo.txt文件,應(yīng)該會(huì)看到以下內(nèi)容 -
This text is written to the file by using StreamWriter class.
using System;
using System.IO;
namespace CSharpProgram
{
class Program
{
static void Main(string[] args)
{
try
{
// Specifying file to read
string loc = "F:\\worksp\\csharp\\fileinfo.txt";
// Creating FileInfo instance
FileInfo file = new FileInfo(loc);
// Opening file to read
StreamReader sr = file.OpenText();
string data = "";
while ((data = sr.ReadLine()) != null)
{
Console.WriteLine(data);
}
}
catch (IOException e)
{
Console.WriteLine("Something went wrong: " + e);
}
}
}
}
執(zhí)行上面示例代碼后,應(yīng)該會(huì)看到以下結(jié)果 -
This text is written to the file by using StreamWriter class.