C# 文件与文件夹操作指南:深入探索流、文件流及文件夹管理

C# 中的文件操作是一个重要的功能,它允许读取、写入、修改以及管理存储在磁盘上的文件和文件夹。下面将介绍文件操作的一些基本概念,包括流(Streams)、文件流(FileStream)、字节流(实际上,FileStream 就是一种字节流),以及文件夹(或称为目录)操作。

1. 流(Streams)

在 C# 中,流(Streams)是一种抽象的概念,用于表示数据的流动。它可以是输入流(从源读取数据),也可以是输出流(向目标写入数据)。流是顺序的,意味着可以从头到尾地访问数据,但通常不支持直接访问流的中间部分。流可以是同步的或异步的,取决于如何使用它们。

2. 文件流(FileStream)

FileStream 类是 System.IO 命名空间下的一个类,它用于文件的字节级操作。可以使用 FileStream 来读取、写入、打开或创建文件。FileStream 提供了同步和异步的读写方法,以及用于控制文件访问(如只读、只写、读写)和共享(如独占访问、共享访问)的选项。

示例代码(创建和写入文件)
using System;
using System.IO;
using System.Text;

class Program
{
    static void Main()
    {
        string filePath = "example.txt";
        string content = "Hello, World!";

        using (FileStream fs = new FileStream(filePath, FileMode.Create, FileAccess.Write))
        {
            byte[] bytes = Encoding.UTF8.GetBytes(content);
            fs.Write(bytes, 0, bytes.Length);
        }

        Console.WriteLine("文件创建和内容写入.");
    }
}

3. 字节流

在 C# 中,当提到字节流时,通常指的是能够按字节读写数据的流,如 FileStream。字节流非常适合于处理二进制文件,如图片、音频或视频文件,以及那些需要精确控制文件内容的场景。

4. 文件夹操作

文件夹(或称为目录)操作允许创建、删除、移动和枚举文件夹及其内容。C# 中的 Directory 类和 DirectoryInfo 类提供了丰富的静态和实例方法来执行这些操作。

示例代码(创建文件夹)
using System;
using System.IO;

class Program
{
    static void Main()
    {
        string folderPath = "NewFolder";

        if (!Directory.Exists(folderPath))
        {
            Directory.CreateDirectory(folderPath);
            Console.WriteLine("Folder created.");
        }
        else
        {
            Console.WriteLine("Folder already exists.");
        }
    }
}
示例代码(枚举文件夹中的文件)
using System;
using System.IO;

class Program
{
    static void Main()
    {
        string folderPath = @"C:\path\to\your\folder";

        string[] files = Directory.GetFiles(folderPath);

        foreach (string file in files)
        {
            Console.WriteLine(file);
        }
    }
}

通过这些基本的文件和文件夹操作,可以在 C# 应用程序中执行复杂的文件处理任务。记得在使用完文件或文件夹资源后,适当地关闭它们以释放资源。在上面的示例中,using 语句用于自动关闭 FileStream,这是一种很好的做法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AitTech

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值