System.IO.File.Create 方法 (String, Int32)

方法描述

创建或覆盖指定的文件。

语法定义(C# System.IO.File.Create 方法 (String, Int32) 的用法)

public static FileStream Create(
	string path,
	int bufferSize
)

参数/返回值

参数值/返回值 参数类型/返回类型 参数描述/返回描述
path System-String 文件名。
bufferSize System-Int32 用于读取和写入文件的已放入缓冲区的字节数。
返回值 System.IO.FileStream 一个具有指定缓冲大小的 FileStream,它提供对 path 中指定的文件的读/写访问。

提示和注释

由此方法创建的 FileStream 对象的 FileShare 值默认为 None;直到关闭原始文件句柄后,其他进程或代码才能访问这个创建的文件。

允许 path 参数指定相对或绝对路径信息。 相对路径信息被解释为相对于当前工作目录。 若要获取当前工作目录,请参见 GetCurrentDirectory。

此方法等效于 FileStream(String, FileMode, FileAccess, FileShare, Int32) 构造函数重载。 如果指定的文件不存在,则创建该文件;如果存在并且不是只读的,则将覆盖其内容。

默认情况下,将向所有用户授予对新文件的完全读/写访问权限。 文件是用读/写访问权限打开的,必须关闭后才能由其他应用程序打开。

有关通用 I/O 任务的列表,请参见通用 I/O 任务。

System.IO.File.Create 方法 (String, Int32)例子

下面的示例创建一个具有指定缓冲区大小的文件。

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

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

        // Delete the file if it exists.
        if (File.Exists(path)) 
        {
            File.Delete(path);
        }

        // Create the file.
        using (FileStream fs = File.Create(path, 1024)) 
        {
            Byte[] info = new UTF8Encoding(true).GetBytes("This is some text in the file.");
            // Add some information to the file.
            fs.Write(info, 0, info.Length);
        }

        // Open the stream and read it back.
        using (StreamReader sr = File.OpenText(path)) 
        {
            string s = "";
            while ((s = sr.ReadLine()) != null) 
            {
                Console.WriteLine(s);
            }
        }
    }
}

异常

异常 异常描述
UnauthorizedAccessException
  • 调用方没有所要求的权限。
  • path 指定了一个只读文件。
ArgumentException path 是一个零长度字符串,仅包含空白或者包含一个或多个由 InvalidPathChars 定义的无效字符。
ArgumentNullException path 为 null。
PathTooLongException 指定的路径、文件名或者两者都超出了系统定义的最大长度。 例如,在基于 Windows 的平台上,路径必须小于 248 个字符,文件名必须小于 260 个字符。
DirectoryNotFoundException 指定的路径无效(例如,它位于未映射的驱动器上)。
IOException 创建文件时发生 I/O 错误。
NotSupportedException path 的格式无效。

命名空间

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 系统要求。