常用文件和IO类使用总结

来源:互联网 发布:win7软件打不开 编辑:程序博客网 时间:2024/06/16 06:57

一、使用场景

1)、对磁盘的基本操作(DriveInfo类 )

DriveInfo类包括的主要成员方法/属性说明方法GetDrives()获取计算机上的所有的逻辑驱动器属性

AvailableFreeSpace
DriveFormat
DriveType
IsReady
Name
RootDirectory
TotalFreeSpace
TotalSize
VolumeLabel
获取驱动器上的可用空闲空间量
获取文件系统的名称,如NTFS或FAT32
获取驱动器类型
获取启动器是否已准备好的状态值
获取驱动器的名称
获取驱动器的根目录
获取驱动器上的可用空闲空间总量
获取驱动器上存储空间的总大小
获取或设置驱动器的卷标

2)、对目录的基本操作(静态Directory类和实例DirectoryInfo类)

主要用于创建、赋值、移动、重命名和删除目录;获取和设置目录的创建、访问及写入的时间戳信息等。

DirectoryInfo类适用于对目录路径执行多次操作

Directory类适用于对目录路径执行一次操作;但是Directory类的静态方法对所有方法都执行安全检查,如果需要多次重用某个对象,建议使用DirectoryInfo相应的实例方法。

Directory类包括的主要成员方法/属性说明方法

DirectoryInfo CreateDirectory(string path)  在指定路径中创建所有目录和子目录,除非它们已经存在。
DirectoryInfo CreateDirectory(string path, DirectorySecurity directorySecurity)  在指定路径中创建所有目录(除非已存在),并应用指定的 Windows 安全性。
void Delete(string path, bool recursive)  删除指定的目录,并删除该目录中的所有子目录和文件(如果表示)。
void Delete(string path)  从指定路径删除空目录。
bool Exists(string path)  确定给定路径是否引用磁盘上的现有目录。
DateTime GetCreationTime(string path)  获取目录的创建日期和时间。
DateTime GetCreationTimeUtc(string path)   获取目录创建的日期和时间,其格式为协调通用时 (UTC)。
string GetCurrentDirectory()  获取应用程序的当前工作目录。
string[] GetDirectories(string path, string searchPattern, SearchOption searchOption)  返回与在指定目录中的指定搜索模式匹配的子目录的名称(包括其路径),还可以选择地搜索子目录。
 string[] GetDirectories(string path, string searchPattern)  返回指定目录中与指定的搜索模式匹配的子目录的名称(包括其路径)。
string GetDirectoryRoot(string path)  返回指定路径的卷信息、根信息或两者同时返回。
string[] GetFiles(string path, string searchPattern, SearchOption searchOption)  
返回指定目录中与指定的搜索模式匹配的文件的名称(包含其路径),使用某个值确定是否要搜索子目录
属性
更多方法可以查询MSDN文档
目录重命名移动都可以使用move(string sourceDir,string destDir)方法重命名。
也可以用来重命名文件
3)、文件的基本操作(静态File类和实例FileInfo类)
File类和FileInfo类都可以用于文件基本操作,包括创建、复制、移动、重命名和删除文件;打开文件,读取文件内容和追加内容到文件;获取和设置文件的创建、访问及写入的时间戳信息等。
FileInfo类适用于对文件执行多次操作
File类适用于对文件执行一次操作,但是File类的静态方法对所有方法都执行安全检查,如果需要多次重用某个对象,建议使用FileInfo的相应实例方法。
4)、Path类 对路径字符串进行操作,操作过程中只是对字符串的操作并未对文件或者目录进行修改

5)、文本文件的读取和写入(StreamReader类和StreamWriter类) 操作字符
6)、二进制文件的读取和写入(BinaryReader类和BinaryWriter类) 操作字节 可以读取各种基本类型数据
7)、FileStream类 读取和写入 通过一个字节数组进行读取和写入,可以操作大文件,支持通过Seek方法对文件进行随机访问,Seek通过字节偏移量将读取和写入位置移动到文件中的任意位置,字节偏移量是相对于查找参考点(文件的开始、当前位置或结尾,分别对应于SeekOrigin.Begin、SeekOrigin.Current、SeekOrigin.End)。FileStream对输入输出进行缓存,从而提高性能。
8)、BufferedStream:是向另一个Stream(如NetworkStream)添加缓冲的Stream。BufferedStream可以围绕某些类型的流来构成以提高读写性能。缓冲区是内存中的字节块,用于缓存数据,从而减少对操作系统的调用次数。
9)、CryptoStream:将数据流链接到加密转换,虽然CryptoStream是从Stream派生的,但它不属于System.IO命名空间,而是在System.Security.Cryptography命名空间中。
10)、MemoryStream:是一个非缓冲流,可以在内存中直接访问其封装数据。该流没有后备存储,可用作临时缓冲区。
11)、NetworkStream:表示网络连接上的Stream。虽然NetworkStream是从Stream派生的,但它不属于System.IO命名空间,而是在System.Net.Sockets命名空间中
原创粉丝点击