FileInfo 类用于处理 C# 中的文件及其操作。它提供了用于创建、删除和读取文件的属性和方法。它使用 StreamWriter 类将数据写入文件。它是 System.IO 命名空间的一部分。
[SerializableAttribute] [ComVisibleAttribute(true)] public sealed class FileInfo : FileSystemInfo
下表包含 FileInfo 类的构造函数。
构造函数 | 描述 |
---|---|
文件信息(字符串) | 它用于初始化 FileInfo 类的新实例,该实例充当文件路径的包装器。 |
下表包含 FileInfo 类的属性。
特性 | 描述 |
---|---|
Attributes | 它用于获取或设置当前文件或目录的属性。 |
CreationTime | 用于获取或设置当前文件或目录的创建时间。 |
Directory | 它用于获取父目录的实例。 |
DirectoryName | 它用于获取表示目录完整路径的字符串。 |
Exists | 它用于获取指示文件是否存在的值。 |
FullName | 它用于获取目录或文件的完整路径。 |
IsReadOnly | 它用于获取或设置确定当前文件是否为只读的值。 |
LastAccessTime | 它用于获取或设置当前文件或目录最后一次访问的时间。 |
Length | 它用于获取当前文件的大小(以字节为单位)。 |
Name | 它用于获取文件的名称。 |
下表包含 FileInfo 类的方法。
方法 | 描述 |
---|---|
AppendText() | 它用于创建一个 StreamWriter,它将文本附加到由 FileInfo 的此实例表示的文件中。 |
CopyTo(String) | 它用于将现有文件复制到新文件。 |
Create() | 它用于创建文件。 |
CreateText() | 它用于创建写入新文本文件的 StreamWriter。 |
Decrypt() | 它用于解密当前帐户使用 Encrypt 方法加密的文件。 |
Delete() | 它用于永久删除文件。 |
Encrypt() | 它用于加密文件,以便只有用于加密文件的帐户才能解密它。 |
GetAccessControl() | 它用于获取封装访问控制列表 (ACL) 条目的 FileSecurity 对象。 |
MoveTo(String) | 它用于将指定的文件移动到新的指定位置。 |
Open(FileMode) | 它用于以指定的模式打开文件。 |
OpenRead() | 它用于创建只读 FileStream。 |
OpenText() | 它用于创建一个使用 UTF8 编码从现有文本文件中读取的 StreamReader。 |
OpenWrite() | 它用于创建只写文件流。 |
Refresh() | 它用于刷新对象的状态。 |
Replace(String,String) | 它用于将指定文件的内容替换为当前 FileInfo 对象所描述的文件。 |
ToString() | 它用于将路径作为字符串返回。 |
using System; using System.IO; namespace CSharpProgram { class Program { static void Main(string[] args) { try { // Specifying file location string loc = "F:\\abc.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); } } } }
输出:
文件创建成功
我们可以看到在F盘里面创建了一个文件abc.txt。下面给出了一个屏幕截图。
using System; using System.IO; namespace CSharpProgram { class Program { static void Main(string[] args) { try { // Specifying file location string loc = "F:\\abc.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); } } } }
输出:
using System; using System.IO; namespace CSharpProgram { class Program { static void Main(string[] args) { try { // Specifying file to read string loc = "F:\\abc.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); } } } }
输出: