C#流类FileStream学习使用笔记
什么是流类FileStream
流类是C#中处理文件(文本、图片、音频等)的类,其中FileStream是最基本最常用的流类之一。相较于其他流类如MemoryStream、StringWriter等,FileStream是读写磁盘文件最快的方式。
FileStream的构造函数
FileStream类的构造函数包含多个重载形式:
public FileStream(String path, FileMode mode)
public FileStream(String path, FileMode mode, FileAccess access)
public FileStream(String path, FileMode mode, FileAccess access, FileShare share)
其中各个参数的含义如下:
- path:文件路径。
- mode:文件打开模式,可选值为Create、CreateNew、Open、OpenOrCreate、Truncate。
- access:文件访问权限,可选值为Read、Write、ReadWrite等。
- share:共享方式,可选值为None、Read、Write、ReadWrite、Delete等。
FileStream的使用示例
示例1:读取文件内容
using System;
using System.IO;
class Program
{
static void Main(string[] args)
{
string filePath = @"C:\temp\test.txt";
// 以只读方式打开文件
using (FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.Read))
{
Console.WriteLine("文件内容:");
byte[] buffer = new byte[1024];
int len = fs.Read(buffer, 0, buffer.Length);
while (len > 0)
{
Console.Write(Encoding.UTF8.GetString(buffer, 0, len));
len = fs.Read(buffer, 0, buffer.Length);
}
}
}
}
以上示例演示了如何使用FileStream读取文件内容,其中常用到的函数为Read()方法,该方法有三个参数:第一个参数为读取到的字节数组,第二个参数为从数组的哪个位置开始存储,第三个参数为读取的字节数。示例中将读取到的字节数组转换为字符串,然后输出到控制台。
示例2:写入文件内容
using System;
using System.IO;
class Program
{
static void Main(string[] args)
{
string filePath = @"C:\temp\test.txt";
string content = "Hello, FileStream!";
// 以写入方式打开文件
using (FileStream fs = new FileStream(filePath, FileMode.Create, FileAccess.Write))
{
byte[] buffer = Encoding.UTF8.GetBytes(content);
fs.Write(buffer, 0, buffer.Length);
}
}
}
以上示例演示了如何使用FileStream写入文件内容,其中常用到的函数为Write()方法,该方法有三个参数:第一个参数为写入的字节数组,第二个参数为从数组的哪个位置开始写入,第三个参数为写入的字节数。示例中将字符串转换为字节数组,然后写入到文件中。
总结
通过以上两个示例,我们可以看出FileStream的使用方法其实很简单,只需要在构造函数中指定文件路径、打开模式、访问权限和共享方式,然后使用Read()方法或Write()方法进行读取或写入。FileStream是处理文件操作最快的方式,学会了FileStream的使用方法,对于爬虫、文件上传、日志系统等领域有非常重要的作用。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#流类FileStream学习使用笔记 - Python技术站