鍍金池/ 教程/ C#/ C# FileInfo類
C#屬性(Properties)
C#與Java比較
C#方法
C#枚舉
C#關(guān)鍵字
C# StreamReader類
C#不安全代碼
C#文件(I/O)
C#匿名方法
C#線程同步
C# Thread類
C#主線程
C#數(shù)據(jù)類型
C# FileStream類
C#預(yù)處理指令
C#繼承
C#循環(huán)
C#決策結(jié)構(gòu)
C#集合
C#反射
C#類型轉(zhuǎn)換
C#泛型
C# StringReader類
C#歷史
C#運(yùn)算符重載
C#屬性
C#線程實(shí)例:Sleep()方法
C#線程示例:優(yōu)先級(jí)
C#線程實(shí)例:Join()方法
C# BinaryReader類
C#類
C#索引器
C# BinaryWriter類
C#序列化
C#常量和文字
C#程序結(jié)構(gòu)
C#封裝
C#事件
C#可空類型(nullable)
C#基本語(yǔ)法
C#異常處理
C#教程
C#接口
C# System.IO命名空間
C#線程命名實(shí)例
C# StringWriter類
C#線程實(shí)例
C#數(shù)組
C#正則表達(dá)式
C#命名空間
C#反序列化
C#與C++比較
C# TextWriter類
C#多線程
C#字符串
C#是什么?
C#變量
C# FileInfo類
C#線程實(shí)例:Abort()方法
C#結(jié)構(gòu)體
C#運(yùn)算符
C#入門(mén)程序
C#多線程生命周期
C# TextReader類
C# DirectoryInfo類
C#委托

C# FileInfo類

C# 中的FileInfo類用于處理及操作文件。它提供用于創(chuàng)建,刪除和讀取文件的屬性和方法。 它使用StreamWriter類將文件寫(xiě)入文件。它在System.IO命名空間中定義。

C# FileInfo類聲明

[SerializableAttribute]  
[ComVisibleAttribute(true)]  
public sealed class FileInfo : FileSystemInfo

C# FileInfo構(gòu)造函數(shù)

下表列出FileInfo類的構(gòu)造函數(shù)。

構(gòu)造函數(shù) 描述
FileInfo(String) 它用于初始化FileInfo類的新實(shí)例,該實(shí)例充當(dāng)文件路徑的包裝器。

C# FileInfo屬性

下表列出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 它用于獲取文件的名稱。

C# FileInfo方法

下表列出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() 它用于將路徑作為字符串返回。

C# FileInfo示例:創(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 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)建。如下圖中所示 -

C# FileInfo示例:寫(xiě)入文件

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.

C# FileInfo示例:從文件中讀取文本內(nèi)容

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.

上一篇:C#集合下一篇:C#枚舉