DirectoryInfo di = Directory.GetParent(path);
FileStream 类
FileStream 类表示在磁盘或网络路径上指向文件的流,并提供了在文件中读写字节和字节数组的方法,通过这些方法,FileStream 对象可以读取诸如图像、声音、视频、文本文件等,也就是说FileStream类能够处理各种数据文件。
FileStream类有很多重载的构造方法,其中最常用的是带有三个参数的构造方法,具体如下。
FileStream(stringpath, FileMode mode, FileAccess access);
上述构造方法中,第一个参数path表示的是文件路径名,第二个参数mode表示如何打开或创建文件,第三个参数access用于确定 FileStream 对象访问文件的方式。
创建一个是否有此文件(没有则创建有则打开),并从中读取数据的实例文件流。
fsRead=new FileStream(sourcePath,FileMode.OpenOrCreate, FileAccess.Read);
创建一个是否有此文件(没有则创建有则打开)并向其中写入数据的实例文件流。
fsWrite= new FileStream(destPath, FileMode.OpenOrCreate, FileAccess.Write);
搭配使用使第一个文件的数据以字节为单位全部写入第二个文件
int temp = -1;
while ((temp = fsRead.ReadByte()) != -1)
{
fsWrite.WriteByte((byte)temp)
}
数据流通常与try-catch-catch-finally搭配寻找异常的实例
FileStream fsRead = null;
FileStream fsWrite = null;
try
{
fsRead = new FileStream(sourcePath, FileMode.OpenOrCreate, FileAccess.Read);
fsWrite = new FileStream(destPath, FileMode.OpenOrCreate, FileAccess.Write);
int temp = -1;
while ((temp = fsRead.ReadByte()) != -1)
{
fsWrite.WriteByte((byte)temp);
}
}
catch(IOException e)(IO异常)
{
Console.WriteLine(e.Message);
}
catch(Exception e)(其他异常)
{
Console.WriteLine(e.Message);
}
finally
{
fsRead.Close();
fsWrite.Close();
}