System.IO命名空间
非抽象I/O类类型 | 作用 |
---|
BinaryReader和BinaryWriter | 这两个类型能够以二进制值存储和读取基本数据类型 |
BufferedStream | 这个类型为字节流提供了临时的存储空间,可以以后提交 |
Directory和DirectoryInfo | 这两个类型用来操作计算机的目录结构。Directory类型主要的功能通过静态方法实现。DirectoryInfo类型则通过一个有效的对象引用来实现类似功能 |
DriveInfo | 提供计算机驱动器的详细信息 |
File和FileInfo | 这两个类型用来操作计算机的一组文件。File类型主要的功能通过静态成员实现,FileInfo类型则通过一个有效的对象引用来实现类似功能 |
FileStream | 这个类型实现文件随机访问(比如寻址能力),并以字节流来表示数据 |
FileSystemWatcher | 这个类型监控对指定外部文件的更改 |
MemoryStream | 这个类型实现对内存(而不是物理文件)中存储的流数据的随机访问 |
Path | 这个类型对包含文件或目录路径信息的System.String类型执行操作。这些操作是与平台无关的 |
StreamWriter和StreamReader | 这个类型用来在(从)文件中存储(获取)文本信息。不支持随机文件访问 |
StringWriter和StringReader | 和StreamWriter/StreamReader类型差不多,这两个类型同样和文本信息打交道,不同的是基层的存储器是字符串缓冲区而不是物理文件 |
Ddirectory(Info)和File(Info)类型
注意:一般来说,FileInfo和DirectoryInfo是获取文件或目录细节更好的方式,因为它们的成员往往会返回强类型对象。而Directory和File类成员往往会返回简单字符串值。
FileSystemInfo属性
属性 | 作用 |
---|
Attributes | 获取或设置与当前文件关联的特性,由FileAttributes枚举表示 |
CreationTime | 获取或设置当前文件或目录的创建时间 |
Exists | 用来判断指定文件或目录是否存在的值 |
Extension | 获取文件的扩展名 |
FullName | 获取目录或文件的完整路径 |
LastAccessTime | 获取或设置上次访问当前文件或目录的时间 |
LastWriteTime | 获取或设置上次写入当前文件或目录的时间 |
Name | 获取当前文件或目录的名称 |
DirectoryInfo类型的主要成员
成员 | 作用 |
---|
Create()和CreateSubdirectory() | 按照路径名建立一个目录(或一组子目录) |
Delete() | 删除一个目录和它的所有内容 |
GetDirectories() | 返回一个表示当前目录中所有子目录的DirectoryInfo对象数组 |
GetFiles() | 返回FileInfo对象数组,表示指定目录下的一组文件 |
MoveTo() | 将一个目录及其内容移动到一个新的路径 |
Parent | 获取指定路径的父目录 |
Root | 获取路径的根部分 |
FileInfo核心成员
成员 | 作用 |
---|
AppendText() | 创建一个StreamWriter类型,它用来向文件追加文本 |
CopyTo() | 将现有文件复制到新文件 |
Create() | 创建一个新文件并且返回一个FileStream类型,通过它来和新创建的文件进行交互 |
CreateText() | 创建一个写入新文本文件的StreamWriter对象 |
Delete() | 删除FileInfo实例绑定的文件 |
Directory | 获取父目录的实例 |
DirectoryName | 获取父目录的完整路径 |
Length | 获取当前文件的大小 |
MoveTo() | 将指定文件移到新位置,并提供指定新文件名的选项 |
Name | 获取文件名 |
Open() | 用各种读/写访问权限和共享特权打开文件 |
OpenRead() | 创建只读FileStream对象 |
OpenText() | 创建从现有文本文件中读取数据的StreamR eader |
OpenWrite() | 创建只写FileStream类型 |
FileInfo.Create中可以使用c#的using域来让编辑器生成释放逻辑
FileInfo f =new FileInfo(@"c:\Test.dat");
using(FileStream s = f.Create()){
//使用FileStream对象
}