C# FileStream简单介绍和使用

C# FileStream简单介绍和使用

简介

FileStream是C#中用于文件操作的类之一,它可以对文件进行读写操作。使用FileStream类操作文件时,首先需要创建FileStream的实例,然后使用该实例的方法来进行文件读写操作。

创建FileStream实例

在创建FileStream实例时,要指定文件路径和文件模式。文件模式可以是读模式、写模式、追加模式。

FileStream fileStream = new FileStream(path, FileMode mode);

其中,path表示文件路径,mode表示文件模式,可用的文件模式有以下三种:

  • FileMode.Create: 如果文件不存在,则新建文件。如果文件已经存在,则清空文件并打开。
  • FileMode.Open: 如果文件不存在,则抛出异常。如果文件已经存在,则打开文件。
  • FileMode.Append: 如果文件不存在,则新建文件。如果文件已经存在,则追加到文件结尾。

读取文件

使用FileStream读取文件时,可以先将文件内容读入一个byte数组中,然后再将byte数组转化为字符串。示例代码如下:

FileStream fileStream = new FileStream(filePath, FileMode.Open);
byte[] bytes = new byte[fileStream.Length];
fileStream.Read(bytes, 0, (int)fileStream.Length);
string content = Encoding.UTF8.GetString(bytes);
fileStream.Close();

在上述代码中,fileStream.Read(bytes, 0, (int)fileStream.Length)读取文件内容并存储到bytes数组中,Encoding.UTF8.GetString(bytes)将byte数组转化为字符串。

写入文件

使用FileStream写入文件时,可以先将要写入的文本内容转化为byte数组,然后再将byte数组写入到文件中。示例代码如下:

string content = "Hello, World!";
byte[] bytes = Encoding.UTF8.GetBytes(content);
FileStream fileStream = new FileStream(filePath, FileMode.Create);
fileStream.Write(bytes, 0, bytes.Length);
fileStream.Flush();
fileStream.Close();

在上述代码中,Encoding.UTF8.GetBytes(content)将要写入的文本内容转化为byte数组,fileStream.Write(bytes, 0, bytes.Length)将byte数组写入到文件中,fileStream.Flush()将缓冲区的数据写入到文件中。

示例

示例一:读取文件

假设有一个文本文件,其路径为D:\test.txt,文件内容为Hello, World!。以下示例代码实现了从该文件中读取文本内容,并将内容打印输出。

FileStream fileStream = new FileStream("D:\\test.txt", FileMode.Open);
byte[] bytes = new byte[fileStream.Length];
fileStream.Read(bytes, 0, (int)fileStream.Length);
string content = Encoding.UTF8.GetString(bytes);
fileStream.Close();
Console.WriteLine(content);

运行上述代码,输出结果为:

Hello, World!

示例二:追加写入文件

假设有一个文本文件,其路径为D:\test.txt,文件内容为Hello, World!。以下示例代码实现了向该文件中追加写入文本内容Nice to meet you!

string content = "Nice to meet you!";
byte[] bytes = Encoding.UTF8.GetBytes(content);
FileStream fileStream = new FileStream("D:\\test.txt", FileMode.Append);
fileStream.Write(bytes, 0, bytes.Length);
fileStream.Flush();
fileStream.Close();

运行上述代码,再次读取D:\test.txt文件的内容,输出结果为:

Hello, World!Nice to meet you!

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C# FileStream简单介绍和使用 - Python技术站

(0)
上一篇 2023年6月1日
下一篇 2023年6月1日

相关文章

  • C# CopyTo(T[],Int32):从特定的 ICollection索引开始,将元素复制到数组中

    C# CopyTo(T[], Int32) 方法攻略 CopyTo(T[], Int32) 方法是 System.Array 中定义的一个方法,它可以将一个一维数组中的元素复制到另一个一维数组中指定的位置。下面详细讲解该方法的用法和示例: 语法 以下是 CopyTo(T[], Int32) 方法的语法: public void CopyTo( Array a…

    C# 2023年4月19日
    00
  • Unity 如何获取鼠标停留位置下的物体

    获取鼠标停留位置下的物体,需要以下几个步骤: 根据鼠标位置获取射线 发射射线,判断射线是否碰撞到物体 如果碰撞到物体,获取物体信息 下面是具体的实现步骤: 步骤1:根据鼠标位置获取射线 在 Unity 中,可以通过 Camera 的 ScreenPointToRay 方法获取屏幕上一点的射线。 Ray ray = Camera.main.ScreenPoin…

    C# 2023年6月3日
    00
  • C#基于WebSocket实现聊天室功能

    下面是C#基于WebSocket实现聊天室功能的完整攻略: 一、准备工作 在进行C#基于WebSocket实现聊天室功能前,我们需要做好以下准备工作: 1. 安装.Net环境 需要在本地安装.Net环境,建议安装.Net Core版本,以确保兼容性和稳定性。 2. 安装WebSocket库 需要在项目中引入WebSocket库,可以使用Nuget包管理器进行…

    C# 2023年6月6日
    00
  • ASP.NET Core环境变量和启动设置的配置教程

    ASP.NET Core环境变量和启动设置的配置教程 在ASP.NET Core应用程序中,环境变量和启动设置是非常重要的配置选项。环境变量可以用于在不同的环境中配置应用程序,而启动设置可以用于配置应用程序的行为。在本攻略中,我们将介绍如何在ASP.NET Core应用程序中配置环境变量和启动设置。 步骤一:创建ASP.NET Core应用程序 首先,需要创…

    C# 2023年5月17日
    00
  • 用C#来解析PDF文件

    当我们要使用 C# 来解析 PDF 文件时,可以使用一些开源库,例如 iTextSharp、PDFSharp 和 Syncfusion.PDF 等。这些库可以帮助我们进行 PDF 文档的读取和编辑,并且提供了一些 API 用于实现文档的操作。 接下来,我们来具体讲解使用 iTextSharp 库和 PDFSharp 库来解析 PDF 文件的两个示例: 示例1…

    C# 2023年5月15日
    00
  • 浅谈ASP.NET Core静态文件处理源码探究

    在ASP.NET Core中,静态文件处理是一个非常重要的功能。本攻略将深入探讨ASP.NET Core静态文件处理的源码实现,并提供两个示例说明。 1. 静态文件处理的基本原理 在ASP.NET Core中,静态文件处理的基本原理是将请求映射到文件系统中的静态文件。当请求到达应用程序时,ASP.NET Core会检查请求路径是否匹配静态文件的路径。如果匹配…

    C# 2023年5月17日
    00
  • C# 常量 结构体 委托

    常量 const double PI = 3.1415926; 常量名命名一般使用大写字母 枚举类型 开发一个游戏,游戏角色有法师(Mage)、射手(Archer)、刺客(Assassin)、坦克(Tank)、铺助(Support)、战士(Warrior),等不同类型。 ❓如何存储游戏角色 使用int类型 :创建一套规则,提前为各个类型角色绑定一个数字标识 …

    C# 2023年5月2日
    00
  • C# CancellationToken和CancellationTokenSource的用法详解

    C# CancellationToken 和 CancellationTokenSource 用法详解 CancellationToken 和 CancellationTokenSource 是 C# 中用于取消异步操作的机制。本篇攻略将详细讲解这两个类的用法。 CancellationTokenSource CancellationTokenSource …

    C# 2023年5月15日
    00
合作推广
合作推广
分享本页
返回顶部