- 经常使用的类
File:实用类 ,提供许多静态方法 ,用于移动 、删除 、复制文件
Directory:实用类 ,提供许多静态方法 ,用于移动 、删除 、复制目录
Path:实用类,用于处理路径名称
FileInfo:表示磁盘上的物理文件 ,具有可以处理此文件的方法 ,要完成对文件的读写工作 ,就必须创建Stream对象
DirectoryInfo:表示磁盘上的物理目录 ,具有可以处理目录的方法
FileStream:表示可以被读或被写 ,或二者都可的文件 ,此文件可以同步或异步读和写
StreamReader:从流中读取字符数据 ,并可通过使用FileStream被创建成基类
StreamWriter:向流写字符数据 ,并可通过使用FileStream被创建成基类
FileSystemWatcher: FileSystemWatcher是用于监控文件和目录 ,并在这些位置发生变化时 ,给出应用程序可以捕获的事件 - File类和Directory实用类提供了许多的静态方法 ,用于处理文件和目录 ,这些方法可以移动文件 、查询和更新特性 ,还可以创建FileStream对象 ,还可以在类上调用静态方法 ,而不必创建它们的实例
File类的一些最常用的静态方法
方法 说明
Copy 将文件从源文件位置复制到目标位置
Create 在指定的路径上创建文件
Delect 删除文件
Open 返回指定路径上的FileStream对象
Move 将指定的文件移到新位置 ,可在新位置为文件指定不同名称
Directory类的一些常用的静态方法
方法 说明
CreateDirectory 创建具有指定路径的目录
Delect 删除具有指定路径的目录
GetDirectories 返回表示指定目录下的目录名string对象数组
EnumerateDirectories 返回目录名为XXX的集合
GetFiles 返回在指定目录中的文件名的string对象数组
EnumerateFiles 返回在指定目录中的文件名的string对象集合
GetFileSystemEntries 返回在指定目录中的文件名和目录名的string对象数组
Move 将指定目录移到新位置 ,可在新位置为文件夹指定一个新名称 - FileInfo类它不像File类 ,它不是静态的 ,没有静态方法 ,只有在实例化后才可使用 。FileInfo对象表示磁盘或网络位置上的文件 。提供文件路径 ,就可创建一个FileInfo对象
- FileStream的属性
属性 说明
Attributes 获取或者设置当前文件或目录的特性
Extension 提取文件的扩展名 ,这个属性是只读的
Exists 确定文件是否存在
Fullname 检索文件的完整路径 ,这个属性是只读的
Name 检索文件的完整路径 ,这是一个只读的抽象属性 - FileInfo的属性
属性 说明
Directory 检索一个Directoryinfo对象 ,表示包含当前文件的目录 ,这个属性是只读的
DirectoryName 返回文件目录的路径
IsReadOnly 文件只读特性的快捷方式 。也可通过Attributes来访问这个属性
Length 获取文件的大小(以字节为单位),返回long值 。这个属性是只读的 - 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”子目录里: