C#文件操作-FileInfo类
FileInfo类是一个密封类,它可以用来创建、复制、删除、移动和打开文件的实例方法。FileInfo类包括6个属性,可以用来获取文件的名称、完整路径等,具体说明如表所示。
FileInfo类的属性表
属 性
说 明
属 性
说 明
Directory
获取父目录
Exists
指定当前文件是否存在
DirectoryName
获取文件的完整路径
Length
获取当前文件的大小(字节)
IsReadOnly
获取或设置当前文件是否为只读
Name
获取文件的名称
FileInfo和DirectoryInfo类一样,也包括了FileSystemInfo类继承而来的属性,在此不做详细介绍。
除了上述属性之外,FileInfo类还包括实例方法,具体说明如表所示。
表FileInfo类的实例方法表
方 法
说 明
方 法
说 明
Create()
创建文件
OpenRead()
以只读方式打开文件
Delete()
删除指定文件
OpenWrite()
以只写方式打开文件
MoveTo()
将指定文件移到新位置
CreateText()
创建写入新文本文件的StreamWriter
CopyTo()
将现有文件复制到新文件
OpenText()
打开指定文本文件,并准备从其文件中读取内容
Replace()
使用其他文件的内容替换指定文件的内容
AppendText()
创建一个StreamWriter,它可以想文本文件追加内容
Open()
打开文件
实例:
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
private void button2_Click(object sender, EventArgs e) { //一定要文件夹路径先存在,否则不可以创建文件 FileInfo file = new FileInfo(@"f:\omidy\aikdyc\temp.txt"); //判断是否存在 if (file.Exists) { //创建时间 MessageBox.Show(file.CreationTime.ToString()); //复制文件 file.CopyTo(@"d:\omidy\" + file.Name,true); } else { file.Create(); } } private void button3_Click(object sender, EventArgs e) { //可以创建多层不存在的目录 DirectoryInfo dir = new DirectoryInfo(@"f:\omidy\aikdyc"); if (dir.Exists) { MessageBox.Show(dir.FullName); } else { dir.Create(); } }
其中,Create()、Delete()、MoveTo()、CopyTo()和Replace()方法用来操作文件,它们依次可以用来创建、删除、移动、复制和替换文件。
Length获取当前文件的大小
FileInfo file = new FileInfo(@"C:\WINDOWS\system32\cmd.exe");
long filesize=file.Length/1024;
Console.WriteLine("文件大小:{0}k",filesize);