C# File.OpenWrite(string path):以写模式打开指定文件,并返回FileStream对象

  • Post category:C#

C#中的File.OpenWrite(string path)方法的作用是以打开或者创建写入文件的方式来返回指定路径下的FileStream对象。如果指定的文件已经存在,则该方法将它截断,如果文件不存在则创建它。它返回的对象用于向文件写入二进制数据。

使用方法:

  1. 引入命名空间System.IO,代码如下:
using System.IO;
  1. 调用File.OpenWrite方法打开或者创建写入文件的方式来返回指定路径下的FileStream对象,代码如下:
FileStream stream = File.OpenWrite(@"D:\demo.txt");
  1. 向返回的FileStream对象中写入数据,代码如下:
byte[] bytes = new byte[] { 1, 2, 3 };
stream.Write(bytes, 0, bytes.Length);
  1. 关闭FileStream对象,代码如下:
stream.Close();

完整示例1:在指定目录下创建新的文件

下面的代码演示了如何在指定目录下创建一个新的文件,如果文件已经存在则将其截断,如果文件不存在则创建它,并向其写入数据。

using System.IO;

class Program
{
    static void Main(string[] args)
    {
        try
        {
            // 要写入的二进制数据
            byte[] bytes = new byte[] { 1, 2, 3 };

            // 创建一个新的文件,如果文件已经存在则将其截断,如果文件不存在则创建它
            using (FileStream stream = File.OpenWrite(@"D:\demo.txt"))
            {
                // 向文件写入数据
                stream.Write(bytes, 0, bytes.Length);
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine(ex.Message);
        }
    }
}

完整示例2:向已经存在的文件中添加数据

下面的代码演示了如何向已经存在的文件中添加数据。注意,我们使用FileMode.Append打开文件,以避免覆盖原有内容。

using System.IO;

class Program
{
    static void Main(string[] args)
    {
        try
        {
            // 要写入的二进制数据
            byte[] bytes = new byte[] { 4, 5, 6 };

            // 打开指定文件,并将FileMode设置为Append,表示向文件添加内容而不是覆盖
            using (FileStream stream = new FileStream(@"D:\demo.txt", FileMode.Append))
            {
                // 向文件写入数据
                stream.Write(bytes, 0, bytes.Length);
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine(ex.Message);
        }
    }
}

以上就是C#中File.OpenWrite方法的完整攻略和两个示例的说明。