System.IO.FileInfo.OpenWrite 方法

方法描述

创建只写 FileStream。

语法定义(C# System.IO.FileInfo.OpenWrite 方法 的用法)

public FileStream OpenWrite()

参数/返回值

参数值/返回值 参数类型/返回类型 参数描述/返回描述
返回值 System.IO.FileStream 为新的或现有文件的只写非共享的 FileStream 对象。

提示和注释

该 OpenWrite 方法打开文件(如果已存在文件路径的文件);或创建一个新文件(如果不存在该文件路径的文件)。 对于现有的文件,不把新文本追加到现有文本。 相反,它会用新的字符覆盖现有字符。 如果您用一个较短的字符串(如“第二次运行”)覆盖一个较长的字符串(例如,“这是 OpenWrite 方法的测试”),则该文件将包含字符串的混合(“ OpenWrite 方法的第二个 runtest”)。

System.IO.FileInfo.OpenWrite 方法例子

下面的示例打开一个文件进行写入操作,随后从该文件中读取。

using System;
using System.IO;
using System.Text;

class Test 
{
    public static void Main() 
    {
        string path = @"c:\MyTest.txt";
        FileInfo fi = new FileInfo(path);

        // Open the stream for writing.
        using (FileStream fs = fi.OpenWrite()) 
        {
            Byte[] info = 
                new UTF8Encoding(true).GetBytes("This is to test the OpenWrite method.");

            // Add some information to the file.
            fs.Write(info, 0, info.Length);
        }

        // Open the stream and read it back.
        using (FileStream fs = fi.OpenRead()) 
        {
            byte[] b = new byte[1024];
            UTF8Encoding temp = new UTF8Encoding(true);

            while (fs.Read(b,0,b.Length) > 0) 
            {
                Console.WriteLine(temp.GetString(b));
            }
        }
    }
}
//This code produces output similar to the following; 
//results may vary based on the computer/file structure/etc.:
//
//This is to test the OpenWrite method.
//
//
//
//
//
//
//
//
//
//
//

异常

异常 异常描述
UnauthorizedAccessException 路径指定创建 FileInfo 对象的实例何时是只读或者是目录。
DirectoryNotFoundException 路径指定创建 FileInfo 对象的实例何时无效,例如在未映射的驱动器上时。

命名空间

namespace: System.IO

程序集: mscorlib(在 mscorlib.dll 中)

版本信息

.NET Framework 受以下版本支持:4、3.5、3.0、2.0、1.1、1.0 .NET Framework Client Profile 受以下版本支持:4、3.5 SP1

适用平台

Windows 7, Windows Vista SP1 或更高版本, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008(不支持服务器核心), Windows Server 2008 R2(支持 SP1 或更高版本的服务器核心), Windows Server 2003 SP2 .NET Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求。