C#文件操作(File FileInfo FileStream)

命名空间:System.IO;

File类:提供用于操作文件的静态方法。

FileInfo类:提供操作文件的属性和实例方法。

Directory:提供用于操作目录的静态方法。

DirectoryInfo类:提供用于操作目录的实例方法,此类不能被继承。

简单来说,有Info这个词的类不是静态的,必须要实例化后才可以使用;

而没有这个词的都是静态类,可以直接使用。当需要进行很多次对目录或文件的操作时,最好别使用静态类,因为每次都要查找文件,所以会比较耗费时间。

 

以下是File常用的简单的方法:

  1. 判断文件是否存在:File.Exists();
  2. 创建文件:File.Create();
  3. 删除文件:File.Delete();
  4. 复制文件:File.Copy();
  5. 读写文件:File.ReadAllLines();File.WriteAllLines();

1、FileStream类:

主要用于对磁盘上文件的读写读取数据:

FileStream fs = new FileStream("demo.txt",FileMode.Open);//始化文件流

byte[] array = new byte[fs.Length];//初始化字节数组fs.Read(array, 3, array.Length);//读取流中数据到字节数组中

fs.Close();//关闭流

string str = Encoding.Default.GetString(array);//将字节数组转化为

字符串Console.WriteLine(str);

int read(byte[] arr,int offset,int count)

arr表示存储读取到数据字节

offset偏移量,从arr中offset这个下标开始存入数据

count:最多可以读取的字节数返回值:实际读取的字节数

注意:offset+count<arr.length

写入数据:

FileStream fs = new FileStream("demo.txt",FileMode.Append);// 初始化文件流

byte[] array = Encoding.UTF8.GetBytes("Hello World!你好");//给字节数组赋值

fs.Write(array, 0, array.Length);//将字节数组写入文件流

fs.Close();//关闭流

Write(byte[] arr,int offset,int count)

从数组arr中offset这个下标开始读取count个字节写入到文件流中;

猜你喜欢

转载自blog.csdn.net/qq_42485607/article/details/81179153