访问文件系统的类

本文介绍了C#中访问文件系统的关键类,如File、Directory、Path、FileInfo和DirectoryInfo。File和Directory提供静态方法进行文件和目录的操作,如复制、删除、移动。FileInfo和DirectoryInfo是实例化对象,分别代表单个文件和目录,具有丰富的属性和方法。此外,还提到了FileStream、StreamReader和StreamWriter用于文件的读写操作,以及FileSystemWatcher用于监控文件系统变化。C#中的路径处理和特殊字符的转义也在文中进行了说明。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. 经常使用的类
    File:实用类 ,提供许多静态方法 ,用于移动 、删除 、复制文件
    Directory:实用类 ,提供许多静态方法 ,用于移动 、删除 、复制目录
    Path:实用类,用于处理路径名称
    FileInfo:表示磁盘上的物理文件 ,具有可以处理此文件的方法 ,要完成对文件的读写工作 ,就必须创建Stream对象
    DirectoryInfo:表示磁盘上的物理目录 ,具有可以处理目录的方法
    FileStream:表示可以被读或被写 ,或二者都可的文件 ,此文件可以同步或异步读和写
    StreamReader:从流中读取字符数据 ,并可通过使用FileStream被创建成基类
    StreamWriter:向流写字符数据 ,并可通过使用FileStream被创建成基类
    FileSystemWatcher: FileSystemWatcher是用于监控文件和目录 ,并在这些位置发生变化时 ,给出应用程序可以捕获的事件
  2. File类和Directory实用类提供了许多的静态方法 ,用于处理文件和目录 ,这些方法可以移动文件 、查询和更新特性 ,还可以创建FileStream对象 ,还可以在类上调用静态方法 ,而不必创建它们的实例
     File类的一些最常用的静态方法
    方法 说明
    Copy 将文件从源文件位置复制到目标位置
    Create 在指定的路径上创建文件
    Delect 删除文件
    Open 返回指定路径上的FileStream对象
    Move 将指定的文件移到新位置 ,可在新位置为文件指定不同名称
     Directory类的一些常用的静态方法
    方法 说明
    CreateDirectory 创建具有指定路径的目录
    Delect 删除具有指定路径的目录
    GetDirectories 返回表示指定目录下的目录名string对象数组
    EnumerateDirectories 返回目录名为XXX的集合
    GetFiles 返回在指定目录中的文件名的string对象数组
    EnumerateFiles 返回在指定目录中的文件名的string对象集合
    GetFileSystemEntries 返回在指定目录中的文件名和目录名的string对象数组
    Move 将指定目录移到新位置 ,可在新位置为文件夹指定一个新名称
  3. FileInfo类它不像File类 ,它不是静态的 ,没有静态方法 ,只有在实例化后才可使用 。FileInfo对象表示磁盘或网络位置上的文件 。提供文件路径 ,就可创建一个FileInfo对象
  4. FileStream的属性

    属性 说明
    Attributes 获取或者设置当前文件或目录的特性
    Extension 提取文件的扩展名 ,这个属性是只读的
    Exists 确定文件是否存在
    Fullname 检索文件的完整路径 ,这个属性是只读的
    Name 检索文件的完整路径 ,这是一个只读的抽象属性
  5. FileInfo的属性

    属性 说明
    Directory 检索一个Directoryinfo对象 ,表示包含当前文件的目录 ,这个属性是只读的
    DirectoryName 返回文件目录的路径
    IsReadOnly 文件只读特性的快捷方式 。也可通过Attributes来访问这个属性
    Length 获取文件的大小(以字节为单位),返回long值 。这个属性是只读的
  6. DirectoryInfo类的作用类似于FileInfo类 。它是一个实例化的对象 ,表示计算机上的单一目录与FIleInfo类一样 ,在Directory和DirectoryInfo之间存在许多类型的方法调用 。选择使用File或FileInfo方法的规则也适用于DirectoryInfo方
     DirectoryInfo类的专用属性
    属性 说明
    Parent 检索一个DirectoryInfo对象 ,表示包含当前目录的目录 。这个属性是只读的
    Root 检索一个DirectoryInfo对象 ,表示包含当前目录的根目录 。例如C:\目录 。这个属性是只读的
     在C#中 “\”是特殊字符,要表示它的话需要使用“\”。由于这种写法不方便,C#语言提供了@对其简化。
    只要在字符串前加上@即可直接使用“\”。 所以上面的路径在C#中应该表示为“Book”,@“\Tmp\Book”,@“C:\Tmp\Book”。
    相对路径使用“/”字符作为目录的分隔字符,而绝对路径可以使用“\”或“/”字符作为目录的分隔字符。
    (1) 绝对路径
    绝对路径是指文件在硬盘上真正存在的路径。那么如果要使用绝对路径指定网页的背景图片就应该使用 以下语句:
(2) 相对路径 所谓相对路径,就是相对于自己的目标文件位置。 在同一个目录: 在其所在目录的“img”子目录里: (由于“img”,因此在“img”前不用再加上“/”字符。) 在其所在目录的上级目录里: (在相对路径里常使用“../”来表示上一级目录。如果有多个上一级目录,可以使用多个“../”.) 在其所在目录的上级目录里的“img”子目录里:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值