.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();
        }

 

 

 

操作目录(文件夹)的静态类: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):

 

posted @ 2015-10-26 22:42  享智同行  阅读(701)  评论(0编辑  收藏  举报
我要啦免费统计