C# StreamReader/StreamWriter与FileStream用法详解

avatar
作者
猴君
阅读量:7

StreamReader和StreamWriter是C#中用于处理文本文件的类,而FileStream是用于处理二进制文件的类。下面是它们的用法详解:

StreamReader用法:

  1. 创建一个StreamReader对象:可以通过指定文件的路径来创建StreamReader对象,也可以通过传递一个FileStream对象来创建StreamReader对象。
StreamReader reader = new StreamReader("file.txt"); StreamReader reader = new StreamReader(File.OpenRead("file.txt")); 
  1. 读取文件内容:可以使用ReadLine()方法逐行读取文本文件,使用ReadToEnd()方法一次性读取整个文件内容。
string line = reader.ReadLine(); string content = reader.ReadToEnd(); 
  1. 关闭StreamReader对象:读取完文件后,需要关闭StreamReader对象以释放资源。
reader.Close(); 

StreamWriter用法:

  1. 创建一个StreamWriter对象:可以通过指定文件的路径来创建StreamWriter对象,也可以通过传递一个FileStream对象来创建StreamWriter对象。
StreamWriter writer = new StreamWriter("file.txt"); StreamWriter writer = new StreamWriter(File.OpenWrite("file.txt")); 
  1. 写入数据到文件:可以使用Write()方法将数据写入文件,使用WriteLine()方法写入一行数据到文件。
writer.Write("Hello"); writer.WriteLine("World"); 
  1. 关闭StreamWriter对象:写入完数据后,需要关闭StreamWriter对象以释放资源。
writer.Close(); 

FileStream用法:

  1. 创建一个FileStream对象:需要指定文件的路径、打开模式和访问权限来创建FileStream对象。
FileStream fileStream = new FileStream("file.bin", FileMode.Open, FileAccess.ReadWrite); 
  1. 读取二进制数据:可以使用Read()方法读取一个字节的二进制数据,使用ReadByte()方法读取一个字节的二进制数据,使用ReadBytes()方法读取指定长度的二进制数据。
byte[] buffer = new byte[1024]; int bytesRead = fileStream.Read(buffer, 0, buffer.Length); 
  1. 写入二进制数据:可以使用Write()方法写入一个字节的二进制数据,使用WriteByte()方法写入一个字节的二进制数据,使用WriteBytes()方法写入字节数组的二进制数据。
byte[] data = { 0x01, 0x02, 0x03 }; fileStream.Write(data, 0, data.Length); 
  1. 关闭FileStream对象:读取或写入完数据后,需要关闭FileStream对象以释放资源。
fileStream.Close(); 

以上就是StreamReader/StreamWriter与FileStream的用法详解。根据具体需求和文件类型选择适合的类来处理文件操作。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!