C# - 文件I/O

C# - 文件I/O 首页 / C#入门教程 / C# - 文件I/O

文件是存储在磁盘中的具有特定名称和目录路径的数据集合,当打开文件进行读取或写入时,它将成为流。

I/O类

System.IO命名空间具有各种类,用于对文件执行大量操作,如创建和删除文件、读取或写入文件、关闭文件等。

下表显示了System.IO命名空间-中一些常用的非抽象类

Sr.No.I/O Class & 描述
1

BinaryReader

从二进制中读取数据。

2

BinaryWriter

以二进制格式写入数据。

3

BufferedStream

字节流的临时存储器。

4

Directory

目录

5

DirectoryInfo

目录信息

6

DriveInfo

驱动器信息。

7

File

文件。

8

FileInfo

文件信息。

9

FileStream

文件流,用于读取和写入文件中的任何位置。

10

MemoryStream

内存流

11

Path

文件路径

12

StreamReader

用于从字节流读取字符。

13

StreamWriter

用于将字符写入流。

14

StringReader

用于从字符串缓冲区读取。

15

StringWriter

用于写入字符串缓冲区。

FileStream类

System.IO命名空间中的FileStream类有助于读取、写入和关闭文件。

您需要创建FileStream对象以创建新文件或打开现有文件,创建FileStream对象的语法如下所示:-

FileStream <object_name>=new FileStream( <file_name>, <FileMode Enumerator>,
   <FileAccess Enumerator>, <FileShare Enumerator>);

如,无涯教程创建了一个FileStream对象F,用于读取名为sample.txt的文件,如下所示-

FileStream F=new FileStream("sample.txt", FileMode.Open, FileAccess.Read,
   FileShare.Read);
Sr.No.Parameter & 描述
1

FileMode

FileMode枚举器定义打开文件的各种方法。FileMode枚举器的成员是-

  • Append - 打开现有文件并将光标移到文件末尾,如果文件不存在,则创建文件。

  • Create - 创建一个新文件。

  • CreateNew - 向操作系统指定它应该创建一个新文件。

  • Open - 打开一个现有文件。

  • OpenOrCreate -  向操作系统指定,如果文件存在,它应该打开它,否则它应该创建一个新文件。

  • Truncate - 打开现有文件并将其大小截断为零字节。

2

FileAccess

FileAccess枚举器具有成员:Read、ReadWrite和Write。

3

FileShare

FileShare枚举器具有以下成员:

  • Inheritable - 允许文件句柄将继承传递给子进程

  • None - 拒绝共享当前文件

  • Read - 允许打开文件进行读取。

  • ReadWrite - 允许打开文件进行读写

  • Write - 允许打开文件进行写入

以下程序演示了FileStream类的用法

using System;
using System.IO;

namespace FileIOApplication {
   class Program {
      static void Main(string[] args) {
         FileStream F = new FileStream("test.dat", FileMode.OpenOrCreate, 
            FileAccess.ReadWrite);
         
         for (int i = 1; i <= 20; i++) {
            F.WriteByte((byte)i);
         }
         F.Position = 0;
         for (int i = 0; i <= 20; i++) {
            Console.Write(F.ReadByte() + " ");
         }
         F.Close();
         Console.ReadKey();
      }
   }
}

编译并执行上述代码时,将生成以下输出-

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 -1

文件操作

上面的示例提供了C#中的简单文件操作。然而,要利用C#System.IO类的强大功能,您需要了解这些类的常用属性和方法。

Sr.No.Topic & 描述
1 Reading from and Writing into Text files

它涉及对文本文件的读取和写入。StreamReader和StreamWriter类有助于完成此任务。

2 Reading from and Writing into Binary files

它涉及对二进制文件的读取和写入。BinaryReader和BinaryWriter类有助于完成此操作。

3 Manipulating the Windows file system

它使C#程序员能够浏览和定位Windows文件和目录。

无涯教程网

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

Flink核心技术与实战 -〔张利兵〕

Spring编程常见错误50例 -〔傅健〕

攻克视频技术 -〔李江〕

网络排查案例课 -〔杨胜辉〕

eBPF核心技术与实战 -〔倪朋飞〕

商业思维案例笔记 -〔曹雄峰〕

深入浅出可观测性 -〔翁一磊〕

B端产品经理入门课 -〔董小圣〕

AI绘画核心技术与实战 -〔南柯〕

好记忆不如烂笔头。留下您的足迹吧 :)