.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):

.net对文件的操作之对文件目录的操作的更多相关文章

  1. 详解ios文件系统文件目录读写操作-备用

    iPhone文件读写系统操作教程是本文要介绍的内容,对于一个运行在iPhone得app,它只能访问自己根目录下得一些文件(所谓sandbox).一个app发布到iPhone上后,它得目录结构如下:  ...

  2. [原创]使用python对视频/音频文件进行详细信息采集,并进行去重操作

    [原创]使用python对视频/音频文件进行详细信息采集,并进行去重操作 转载请注明出处 一.关于为什么用pymediainfo以及pymediainfo的安装 使用python对视频/音频文件进行详 ...

  3. PHP之文件目录基础操作

    我们知道,临时声明的变量是保存在内存中的,即便是静态变量,在脚本运行完毕后也会被释放掉,so,想长久保存一个变量的内容,方法之一就是写到文件中,放到硬盘或服务器上,为此文件操作就必须很熟悉. 1.文件 ...

  4. FileUtils【获取SD卡根目录、读写文件、移动、复制、删除文件、获取文件名、后缀名操作类】

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 封装了获取SD卡根目录路径.以及对文件读写.获取文件名等相关操作. 因为需要用到android.permission.READ_EX ...

  5. -1-4 java io java流 常用流 分类 File类 文件 字节流 字符流 缓冲流 内存操作流 合并序列流

      File类 •文件和目录路径名的抽象表示形式 构造方法 •public File(String pathname) •public File(String parent,Stringchild) ...

  6. python文件(概念、基本操作、常用操作、文本文件的编码方式)

    文件 目标 文件的概念 文件的基本操作 文件/文件夹的常用操作 文本文件的编码方式 01. 文件的概念 1.1 文件的概念和作用 计算机的 文件,就是存储在某种 长期储存设备 上的一段 数据 长期存储 ...

  7. 无法打开物理文件“E:\Database\VRVIES6841-FZ01-Global\VRVEIS.mdf”。操作系统错误 5:“5(拒绝访问。)”

    在用SQLServer2012附加SQLServer2000备份的数据库事,报如下错误: 无法打开物理文件“E:\Database\VRVIES6841-FZ01-Global\VRVEIS.mdf” ...

  8. 基于Git的数据库sql文件的管理——完美解决团队sql操作协同问题

    目录 基于Git的数据库sql文件的管理--完美解决团队sql操作协同问题 1.产生背景 2.之前没用Git管理数据库出现的问题 2.1 用同一个库调试带来的问题 3.解决方案 3.1 Sql文件的创 ...

  9. laravel文件存储、删除、移动等操作

    laravel文件存储.删除.移动等操作 一.总结 一句话总结: 启示:可以在操作遇到问题的时候,找文档找实例好好实验一下,也就是学习巩固一下,不必一定要死纠排错 1.laravel文件删除注意? 1 ...

随机推荐

  1. 武汉科技大学ACM :1001: 华科版C语言程序设计教程(第二版)课后习题3.12

    Problem Description 输入n,输出对应的边长为n的空心正六边形. 为方便看图,样例中点 '.' 表示空格,打印图形时请打印空格而非小圆点. Input 边长n.(n<=20) ...

  2. 单电机板机模型,f22

    视频连接 http://v.youku.com/v_show/id_XMTI5MDEzMzIxMg==.html?from=y1.7-1.2 http://v.youku.com/v_show/id_ ...

  3. tomcat加入系统服务

    在实际的项目开发中web容器等都是安装在客户方的服务器上的,在实现tomcat的集群时为了实现防止客户重启的机器造成服务器的关闭因此需要将web容器加入到系统服务中,在系统启动的时候自动启动服务,以t ...

  4. validate插件深入篇

    1.使用valid()来验证表单是否填写正确: <form id="mainform"> <button id="check">< ...

  5. 细说PHP优化那些事

    我们在用PHP编程的时候,总是想要使自己的程序占用资源最小,运行速度更快,代码量更少.往往我们在追求这些的同时却失去了很多东西.下面我想讲讲我对PHP优化的理解.优化的目的是花最少的代价换来最快的运行 ...

  6. Matlab与外部接口:MAT文件基础

    MAT 文件MAT文件是MATLAB使用的一种特有的二进制数据文件.MAT文件可以包含一个或者多个MATLAB 变量.MATLAB通常采用MAT文件把工作空间的变量存储在磁盘里,在MAT文件中不仅保存 ...

  7. 关于Cococs中的CCActionEase

    尊重作者劳动,转载时请标明文章出处.作者:Bugs Bunny地址:http://www.cnblogs.com/cocos2d-x/archive/2012/03/13/2393898.html 本 ...

  8. JSP标准库标签 ———C标签

    一.C标签    一] <c:out value="..." default="..." escapeXml="true">   ...

  9. v8 源码获取与build

    最近准备在工作之余研究下v8,下班时间鼓捣了2天,现在终于能下载,能gclient sync了. 刚开始的目的就是跑一个hello world,按照wiki上的例子来: https://github. ...

  10. kill,killall,top,free,vmstat,iostat,watch命令

    kill命令 Linux 中的kill命令用来终止指定的进程(terminate a process)的运行,是Linux下进程管理的常用命令.通常,终止一个前台进程可以 使用Ctrl+C键,但是,对 ...