C# 进阶 互动版

在线工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 可编程3D场景编辑器

文件的读写

FileStream类读写文件

  使用 System.IO 命名空间中的 FileStream 类读写文件。该类派生自抽象类 Stream。如下代码:

/*----------读取文件-----------*/
byte[] byData = new byte[100]; 
FileStream sFile = new FileStream("a.txt",FileMode.Open); //读取a.txt的内容
sFile.Seek(0, SeekOrigin.Begin);       //设置流的当前位置为文件的开始位置;
sFile.Read(byData, 0, 100);            //将文件的内容读入到字节数组中;

/*----------写入文件-----------*/
FileStream fs = new FileStream("b.txt",FileMode.Create);  //创建要写入数据的文件
byte [] data =new UTF8Encoding().GetBytes("hello world!"); //将要写的内容存入字节数组中
fs.Write(data,0,data.Length);      //写入字节数据
fs.Flush(); 
fs.Close();                        //关闭文件

使用StreamReader和StreamWriter类

  StreamReader类提供了读取文件的方法,而StreamWriter类提供了写入文件的方法。

/*----------读取文件-----------*/
FileStream fs = File.Open("a.txt", FileMode.Open, FileAccess.Read); // 打开文件a.txt
StreamReader sr=new StreamReader(fs, Encoding.GetEncoding("gb2312")); //声明并初始化StreamReader
string line=sr.ReadLine();  //通过StreamReader的ReadLine方法读取一行数据
sr.Close();
fs.Close();

/*----------写入文件-----------*/
FileStream fs = new FileStream("bb.txt", FileMode.Create); //创建要写入数据的文件
StreamWriter sw = new StreamWriter(fs);  //声明并初始化StreamReaderWriter
sw.Write("123");  // 通过StreamWrite的Write方法写入数据
sw.Flush();
fs.Close();