当前位置: 首页 > news >正文

C#文件操作

文件类File

常用方法介绍
Open()打开文件
Create()创建文件
Copy()复制文件
Delete()删除文件
Exists()判断文件是否存在
Move()移动文件
Replace()替换文件
AppendAllText()新建并添加文本
ReadAllText()打开并读取文本内容

1.读取文件

1.创建一个Filestream  对象 (引入System.IO命名空间)

参数1: 文件路径    参数2:枚举,表示对这个文件进行的操作   参数3:枚举,表示对这个文件里面的数据进行操作

FileStream file=new FileStream("F:\\素材收集\\举例子\\加油.text",FileMode.OpenOrCreate,FileAccess.Read);

2.创建字节数组,用于存放读到的数据

byte[] buffer = new byte[1024 * 1024 * 5];//每次读取5M的数据到内存中,然后保存到字节数组中

3.调取读取方法

参数1:存放数据的字节数组    参数2:开始往字节数组中存放的位置   参数3:每次读取的字节大小

返回值: 本次实际读取的有效字节数,比如:读取一个3.5m的文件,控件虽然是5m空间,实例总返回3.5m

int r=file.Read(buffer, 0, buffer.Length);

4.将字节数组中的每一个元素,按照指定的变革解码或指定格式

参数1:需要解码的数组    参数2:从数组中哪个字节开始解码   参数3:解码的长度

string str=Encoding.UTF8.GetString(buffer,0,r);
Console.WriteLine(str);

5.关闭数据流

 file.Close();

6.释放资源

file.Dispose();

7.代码总和

FileStream file=new FileStream("F:\\素材收集\\举例子\\加油.text",FileMode.OpenOrCreate,FileAccess.Read);
 byte[] buffer = new byte[1024 * 1024 * 5];
int r=file.Read(buffer, 0, buffer.Length);
 string str=Encoding.UTF8.GetString(buffer,0,r);
 Console.WriteLine(str);
 file.Close();
 file.Dispose();

效果展示

2.写入文件

 FileStream file1 = new FileStream("F:\\素材收集\\举例子\\Come-On.text", FileMode.OpenOrCreate, FileAccess.Write);
 string str1 = "10.1-5.1,一定加油";
 byte[] buffers = Encoding.UTF8.GetBytes(str1);
 file1.Write(buffers, 0, buffers.Length);
 Console.WriteLine(str1);

效果展示

 驱动器

DriveInfo类的常用字段成员有

DriveFormat(文件系统格式,如NTFS或FAT32)

DriveType(驱动器类型)、Name(驱动器名)

TotalSize(总空间)

TotalFreeSpace(获得驱动器可用空间)

常用的方法成员有GetDrives(获得可用驱动器列表)

      DriveInfo[] driveInfos = DriveInfo.GetDrives();
      foreach (DriveInfo driveInfo in driveInfos)
      {
          if(driveInfo.DriveType==DriveType.Fixed && driveInfo.DriveFormat=="NTFS")
          {
              Console.WriteLine($"在{driveInfo.Name}驱动器上还有{driveInfo.AvailableFreeSpace}字节剩余空间");
          }
      }
      Console.ReadLine();

 二进制流

1.创建二进制流写入

  FileStream file3 = new FileStream("text.txt", FileMode.Create, FileAccess.Write);
  //创建二进制流写入实例
  BinaryWriter bw = new BinaryWriter(file3,Encoding.UTF8);
  bw.Write(Encoding.UTF8.GetBytes("0"));
  bw.Write(0.11);
  bw.Write(true);
  bw.Write(Encoding.UTF8.GetBytes("加油"));
  Console.WriteLine(bw);
  Console.WriteLine(file3);
  bw.Flush();
  bw.Close();
  file3.Close();

2.创建二进制流读取

 FileStream file4 = new FileStream("text.txt", FileMode.Open, FileAccess.Read);
 BinaryReader br = new BinaryReader(file4, Encoding.UTF8);
 Console.WriteLine(br.ReadBoolean());
 Console.WriteLine(br.ReadInt32());
 Console.WriteLine(br.ReadString());

File类的常用方法

常用方法介绍
Open()打开文件
Create()创建文件
Copy()复制文件
Delete()删除文件
Exists()判断文件是否存在
Move()移动文件
Replace()替换文件
AppendAllText新建文件并添加文本
ReadAllText()打开并读取文本内容

相关文章:

  • Linux-SaltStack基础
  • 日常知识点之刷题一
  • PostgreSQL数据库之pg_dump使用
  • 碰撞检测 | 图解凸多边形分离轴定理(附ROS C++可视化)
  • es-head(es库-谷歌浏览器插件)
  • Java 面试之结束问答
  • IOS基础面试题
  • 泛微e9 OA中通过Java SDK获取金蝶云星空中的表单数据
  • 环境配置_升级ubuntu20.04 cmake版本到 3.24或更高版本
  • 深入解析 Linux 文件系统:EXT4、NTFS、NFS、CIFS 等的特点与应用(中英双语)
  • Spring Cloud之注册中心之Nacos的安装
  • 硬件加速与技术创新双轮驱动:DeepSeek和ChatGPT性能进阶的未来蓝图
  • 自编码器(Autoencoders)
  • 计算机视觉基础|轻量化网络设计:MobileNetV3
  • 软件测试高频面试题
  • 14.12 Auto-GPT OutputParser 架构设计:构建安全可控的大模型输出管道
  • 中通科技:边缘计算之路的探索与实践
  • 百度AI图片助手,免费AI去水印、画质修复、画面延展以及局部替换
  • 攻防世界 Reversing-x64Elf-100
  • 力扣hot100刷题——11~20
  • seo点击排名/seo教程 seo之家
  • wordpress $wpdb->get_results/seo发展前景怎么样啊
  • 微信上浏览自己做的网站吗/市场营销毕业论文5000字
  • 网站建设公司营业执照经营范围/关键词推广seo
  • 网站建立站点/宁波网站推广方案
  • 住房和城乡建设部标准定额网站/互联网去哪里学