返回

化繁为简:C# 实现文件读写的三种技巧

后端

在日常编程中,文件操作是一个非常常见且重要的任务。C#提供了多种方法来读取和写入文件,每种方法都有其独特的优点和缺点。本文将介绍C#中实现文件读写的三种常用方式:二进制读写、流读写和字符串读写。

方式一:二进制读写

二进制读写是最基本的文件读写方式,它允许您直接读取和写入文件的原始字节。要进行二进制读写,您可以使用BinaryReader和BinaryWriter类。以下代码示例演示了如何使用BinaryReader读取文件中的字节:

using System;
using System.IO;

namespace BinaryReadWriteDemo
{
    class Program
    {
        static void Main(string[] args)
        {
            // 读取文件中的字节
            using (BinaryReader reader = new BinaryReader(File.Open("data.bin", FileMode.Open)))
            {
                byte[] bytes = reader.ReadBytes(10);

                // 将字节转换为字符串
                string str = System.Text.Encoding.UTF8.GetString(bytes);

                // 打印字符串
                Console.WriteLine(str);
            }
        }
    }
}

上面的代码首先使用File.Open方法打开一个名为"data.bin"的文件,并将其作为参数传递给BinaryReader的构造函数。然后,使用ReadBytes方法读取文件中的前10个字节,并将其存储在bytes数组中。最后,使用System.Text.Encoding.UTF8.GetString方法将字节数组转换为字符串,并将其打印到控制台。

方式二:流读写

流读写是一种更高级的文件读写方式,它允许您以流的形式读取和写入文件。要进行流读写,您可以使用StreamReader和StreamWriter类。以下代码示例演示了如何使用StreamReader读取文件中的文本:

using System;
using System.IO;

namespace StreamReadWriteDemo
{
    class Program
    {
        static void Main(string[] args)
        {
            // 读取文件中的文本
            using (StreamReader reader = new StreamReader("data.txt"))
            {
                string text = reader.ReadToEnd();

                // 打印文本
                Console.WriteLine(text);
            }
        }
    }
}

上面的代码首先使用File.OpenText方法打开一个名为"data.txt"的文件,并将其作为参数传递给StreamReader的构造函数。然后,使用ReadToEnd方法读取文件中的所有文本,并将其存储在text变量中。最后,将text变量打印到控制台。

方式三:字符串读写

字符串读写是C#中读取和写入文件最简单的方式,它允许您直接读取和写入文件的字符串内容。要进行字符串读写,您可以使用File.ReadAllText和File.WriteAllText方法。以下代码示例演示了如何使用File.ReadAllText读取文件中的字符串:

using System;
using System.IO;

namespace StringReadWriteDemo
{
    class Program
    {
        static void Main(string[] args)
        {
            // 读取文件中的字符串
            string text = File.ReadAllText("data.txt");

            // 打印字符串
            Console.WriteLine(text);
        }
    }
}

上面的代码首先使用File.ReadAllText方法读取文件中的所有文本,并将其存储在text变量中。然后,将text变量打印到控制台。

总结

本篇文章介绍了C#中实现文件读写的三种常用方式:二进制读写、流读写和字符串读写。每种方式都有其独特的优点和缺点,您应该根据自己的需求选择最合适的方式。

  • 二进制读写:速度快,但需要对文件格式有深入的了解。
  • 流读写:速度适中,但更灵活,可以处理各种类型的数据。
  • 字符串读写:速度较慢,但使用最简单。