C# FileStream文件读写详解

2019-12-30 12:14:36刘景俊

      aFile.Seek(135,SeekOrigin.Begin);
      aFile.Read(byData,0,200);
   }
   catch(IOException e)
   {
      Console.WriteLine("An IO exception has been thrown!");
      Console.WriteLine(e.ToString());
      Console.ReadKey();
      return;
  }
 
   Decoder d = Encoding.UTF8.GetDecoder();
   d.GetChars(byData, 0, byData.Length, charData, 0);
 
   Console.WriteLine(charData);
   Console.ReadKey();
}

 

(4) 运行应用程序。结果如图22-2所示。

C#,FileStream

图 22-2

示例的说明
此应用程序打开自己的.cs文件,用于读取。它在下面的代码行中使用..字符串向上逐级导航两个目录,找到该文件:

 

复制代码
FileStream aFile = new FileStream("E:WorkplaceTestSolutionTest.ConsoleApplicationProgram.cs",FileMode.Open);

 

下面两行代码实现查找工作,并从文件的具体位置读取字节:

 

复制代码
aFile.Seek(135,SeekOrigin.Begin);
aFile.Read(byData,0,200);

 

第一行代码将文件指针移动到文件的第135个字节。在Program.cs中,这是namespace的 “n”;其前面的135个字符是using指令和相关的#region。第二行将接下来的200个字节读入到byData字节数组中。

注意这两行代码封装在try…catch块中,以处理可能抛出的异常。

 

复制代码
try
{
    aFile.Seek(135,SeekOrigin.Begin);
    aFile.Read(byData,0,100);
}
catch(IOException e)
{
    Console.WriteLine("An IO exception has been thrown!");
    Console.WriteLine(e.ToString());