.net对文件的操作之对文件目录的操作

.NET 提供一个静态File类用于文件的操作,下面列出它的主要操作方法。

返回值类型 方法名称 说明
bool Exists(string path) 用于检查指定文件是否存在
void Copy(string sourceFilePath,string destinationFilePath) 将指定路径的源文件中的内容复制到目标文件中,如果目标文件不存在,则在指定的路径中新建一个文件
void Move(string sourceFileName,string destFileName) 将指定文件移到一个新的路径
void Delete(string path) 删除指定的文件,如果指定的文件不存在,则不引发异常

示例:

//C#中对“\”需要转义,“\\”转义为\,或者在前面加@

static void Main(string[] args)
{
string path = @"F:\test.txt";
//文件存在检测
if (File.Exists(path))
{
Console.WriteLine("文件存在");
//文件复制
File.Copy(path,@"F:\b.txt");
if (File.Exists(@"F:\b.txt"))
{
Console.WriteLine("文件复制成功!");
}
//文件移动
File.Move(path, "F:\\db\\c.txt");
if (File.Exists("F:\\db\\c.txt"))
{
Console.WriteLine("文件移动成功");
}
//文件删除
File.Delete(@"F:\b.txt");
if (!File.Exists(@"F:\b.txt"))
{
Console.WriteLine("文件删除成功!");
}
}
Console.ReadKey();
}

.net对文件的操作之对文件目录的操作

操作目录(文件夹)的静态类:Directory

返回值类型 方法名称 说明
bool Exists(string path) 用于检查文件夹在磁盘上是否存在
void Move(string sourceDirName,string destDirName) 用于将文件或目录及其内容移到新位置
void Delete(string path,bool recursive) 删除指定目录,如果recursive的值为true,则删除子目录中的所有目录内容;如果要删除的目录下有内容而没有设置recursive为true则会抛出异常!

实例类:FileInfo

属性          说明

Exists         用于检查指定文件是否存在,返回一个布尔值

Extension         获取表示扩展名部分的字符串,带.

Name          获取文件名

FullName         获取目录或文件的完整目录

返回值类型 方法 说明
FileInfo CopyTo(string) 将现有文件复制到新文件,不允许覆盖现有文件
void Delete() 永久删除文件
void  MoveTo(string) 将指定文件移到新位置(string)

DirectoryInfo类和Directory类类似

       //目录
DirectoryInfo di = new DirectoryInfo(@"F:\");
//返回传入目录的子目录
DirectoryInfo[] dirs = di.GetDirectories();
//返回传入目录下的文件列表
FileInfo[] files = di.GetFiles();

File类和FileInfo类都能操作文件,什么样的情况更适合哪个类?

  File类的静态方法会在使用时进行安全检查,所以如果想多次使用某个文件对象,可以考虑FileInfo类。Directory和DirectoryInfo一样的道理。

附上文件操作做的小项目截图(使用了TreeView和ListView):

.net对文件的操作之对文件目录的操作

上一篇:day 39 mycql 数据库之约束


下一篇:Vue路由学习心得