C#-剖析文件和流并快速使用

一、概述

文件,具有永久存储及特定顺序的字节组成的一个有序、具有名称的集合;

,提供一种向后备存储写入字节和从后备存储读取字节的方式; 

读写文件和目录时可使用简单的API,也可使用先进的API提供更多的功能;

使用,可以压缩数据,并且利用内存映射的文件和管道在不同的任务间共享数据;

System.IO名称空间包含一些简单的API,其中最重要的类用于浏览文件系统和执行操作,如移动、复制和删除文件:

  • FileSystemInfo-这是表示任何文件系统对象(如FileInfo和DirectoryInfo)的基类;
  • FileInfo和File-表示文件系统上的文件;
  • DirectoryInfo和Directory-表示文件系统上的文件夹;
  • Path-包含的静态成员可用于处理路径名;
  • DriveInfo-它的属性和方法提供了指定驱动器的信息;

二、文件

1、检查驱动器信息

使用DriveInfo的GetDrives()静态方法获取DriveInfo对象数组,再访问每个驱动器信息;

var driveInfos = DriveInfo.GetDrives();
foreach (var driveInfo in driveInfos) 
    Console.WriteLine($"Name:{driveInfo.Name}  totalSize={driveInfo.TotalSize}  freeSpace={driveInfo.TotalFreeSpace}");

2、Path

最常用的方法为Path.Combine(),可把任意个字符串参数组合成完整的路径返回;

string path= Path.Combine(Directory.GetCurrentDirectory(), "123.txt");
Console.WriteLine(path);//输出D:\VS2022\ProjectTest\ConsoleApp5\bin\Debug\net6.0\123.txt

Environment.GetFolderPath获取特殊文件夹的路径:

var foldPath=Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
Console.WriteLine(foldPath);//C:\Users\Administrator\Documents

3、文件和文件夹

 File、Directory定义静态方法,FileInfo、DirectoryInfo提供实例方法,对于大多文件属性只读不可修改,但可设置创建时间和最后一次访问时间;

  • File.WriteAllText(),创建并写入文件;
  • File.WriteAllLines(),创建并写入所有行;
  • File.ReadAllBytes(),读取文件所有内容;
  • File.ReadAllLines(),读取文件所有行;
  • File.AppendAllText(),追加的方式写入所有内容;
  • File.AppendAllLines(),追加的方式写入所有行;
  • File.Copy(),复制文件;

三、流

相关推荐

  1. C#-剖析文件快速使用

    2023-12-06 05:44:06       61 阅读
  2. C++ 文件

    2023-12-06 05:44:06       54 阅读
  3. C语言 文件

    2023-12-06 05:44:06       26 阅读
  4. C# —— FileStream文件

    2023-12-06 05:44:06       23 阅读
  5. C语言】通过fgetsfscanf了解读写文件的概念

    2023-12-06 05:44:06       22 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-06 05:44:06       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-06 05:44:06       100 阅读
  3. 在Django里面运行非项目文件

    2023-12-06 05:44:06       82 阅读
  4. Python语言-面向对象

    2023-12-06 05:44:06       91 阅读

热门阅读

  1. Docker 安装 Redis 挂载配置

    2023-12-06 05:44:06       49 阅读
  2. Python 音频处理相关工具库

    2023-12-06 05:44:06       58 阅读
  3. 如何基于OpenCV和Sklearn库开展数据降维

    2023-12-06 05:44:06       53 阅读
  4. soapui报错: CXF directory must be set in global preferences

    2023-12-06 05:44:06       55 阅读
  5. Hadoop学习笔记(HDP)-Part.03 资源规划

    2023-12-06 05:44:06       56 阅读
  6. 前后端接口设计规范

    2023-12-06 05:44:06       55 阅读