Прочитать на английском

Поделиться через


File.Create Метод

Определение

Создает или усекает и перезаписывает файл по указанному пути.

Перегрузки

Create(String)

Создает или усекает и перезаписывает файл по указанному пути.

Create(String, Int32)

Создает или усекает и перезаписывает файл по указанному пути, указывая размер буфера.

Create(String, Int32, FileOptions)

Создает или перезаписывает файл по заданному пути с указанием размера буфера и параметров, которые описывают, как создавать или перезаписывать файл.

Create(String, Int32, FileOptions, FileSecurity)

Создает или перезаписывает файл по заданному пути с указанием размера буфера и параметров, которые описывают, как создавать или перезаписывать файл. Также указывается значение, определяющее контроль доступа и безопасность аудита для файла.

Create(String)

Исходный код:
File.cs
Исходный код:
File.cs
Исходный код:
File.cs

Создает или усекает и перезаписывает файл по указанному пути.

C#
public static System.IO.FileStream Create (string path);

Параметры

path
String

Путь и имя создаваемого файла.

Возвращаемое значение

FileStream, обеспечивающий доступ для чтения и записи к файлу, указанному в path.

Исключения

У вызывающего объекта отсутствует необходимое разрешение.

-или-

Параметр path указывает файл, доступный только для чтения.

-или-

path указывает файл, который скрыт.

платформа .NET Framework и .NET Core версий старше 2.1: path строка нулевой длины, содержит только пробелы или содержит один или несколько недопустимых символов. Вы можете запросить недопустимые символы с помощью метода GetInvalidPathChars().

path имеет значение null.

Указанный путь, имя файла или оба значения превышают максимальную длину, заданную в системе.

Указан недопустимый путь (например, он ведет на несопоставленный диск).

Ошибка ввода-вывода при создании файла.

Параметр path задан в недопустимом формате.

Примеры

В следующем примере создается файл по указанному пути, записывается некоторая информация в файл и выполняется чтение из файла.

C#
using System;
using System.IO;
using System.Text;

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

        try
        {
            // Create the file, or overwrite if the file exists.
            using (FileStream fs = File.Create(path))
            {
                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);
                }
            }
        }

        catch (Exception ex)
        {
            Console.WriteLine(ex.ToString());
        }
    }
}

Комментарии

ОбъектFileStream, созданный этим методом, имеет значение Noneпо умолчанию FileShare ; никакие другие процессы или код не могут получить доступ к созданному файлу, пока исходный дескриптор файла не будет закрыт.

Этот метод эквивалентен перегрузке Create(String, Int32) метода с размером буфера по умолчанию 4096 байт.

Параметр path может указывать относительные или абсолютные сведения о пути. Сведения об относительном пути интерпретируются как относительные относительно текущего рабочего каталога. Сведения о том, как получить текущий рабочий каталог, см. в разделе GetCurrentDirectory.

Если указанный файл не существует, он создается; Если он существует и не доступен только для чтения, содержимое удаляется и перезаписывается.

По умолчанию полный доступ на чтение и запись к новым файлам предоставляется всем пользователям. Файл открывается с доступом на чтение и запись и должен быть закрыт, прежде чем его сможет открыть другое приложение.

Список распространенных задач ввода-вывода см. в разделе Общие задачи ввода-вывода.

См. также раздел

Применяется к

.NET 9 и другие версии
Продукт Версии
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Create(String, Int32)

Исходный код:
File.cs
Исходный код:
File.cs
Исходный код:
File.cs

Создает или усекает и перезаписывает файл по указанному пути, указывая размер буфера.

C#
public static System.IO.FileStream Create (string path, int bufferSize);

Параметры

path
String

Путь и имя создаваемого файла.

bufferSize
Int32

Число байтов, буферизируемых при чтении и записи в данный файл.

Возвращаемое значение

FileStream с заданным размером буфера, который обеспечивает доступ для чтения и записи к файлу, указанному в path.

Исключения

У вызывающего объекта отсутствует необходимое разрешение.

-или-

Параметр path указывает файл, доступный только для чтения.

-или-

path указывает файл, который скрыт.

платформа .NET Framework и .NET Core версий старше 2.1: path строка нулевой длины, содержит только пробелы или содержит один или несколько недопустимых символов. Вы можете запросить недопустимые символы с помощью метода GetInvalidPathChars().

path имеет значение null.

Указанный путь, имя файла или оба значения превышают максимальную длину, заданную в системе.

Указан недопустимый путь (например, он ведет на несопоставленный диск).

Ошибка ввода-вывода при создании файла.

Параметр path задан в недопустимом формате.

Примеры

В следующем примере создается файл с указанным размером буфера.

C#
using System;
using System.IO;
using System.Text;

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

        // Create the file, or overwrite if the file exists.
        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);
            }
        }
    }
}

Комментарии

ОбъектFileStream, созданный этим методом, имеет значение Noneпо умолчанию FileShare ; никакие другие процессы или код не могут получить доступ к созданному файлу, пока исходный дескриптор файла не будет закрыт.

Параметр path может указывать относительные или абсолютные сведения о пути. Сведения об относительном пути интерпретируются как относительные относительно текущего рабочего каталога. Сведения о том, как получить текущий рабочий каталог, см. в разделе GetCurrentDirectory.

Этот метод эквивалентен перегрузке конструктора FileStream(String, FileMode, FileAccess, FileShare, Int32) . Если указанный файл не существует, он создается; Если он существует и не доступен только для чтения, содержимое заменяется.

По умолчанию полный доступ на чтение и запись к новым файлам предоставляется всем пользователям. Файл открывается с доступом на чтение и запись и должен быть закрыт, прежде чем его сможет открыть другое приложение.

Список распространенных задач ввода-вывода см. в разделе Общие задачи ввода-вывода.

См. также раздел

Применяется к

.NET 9 и другие версии
Продукт Версии
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Create(String, Int32, FileOptions)

Исходный код:
File.cs
Исходный код:
File.cs
Исходный код:
File.cs

Создает или перезаписывает файл по заданному пути с указанием размера буфера и параметров, которые описывают, как создавать или перезаписывать файл.

C#
public static System.IO.FileStream Create (string path, int bufferSize, System.IO.FileOptions options);

Параметры

path
String

Путь и имя создаваемого файла.

bufferSize
Int32

Число байтов, буферизируемых при чтении и записи в данный файл.

options
FileOptions

Одно из значений FileOptions, которое описывает, как создавать или перезаписывать файл.

Возвращаемое значение

Новый файл с заданным размером буфера.

Исключения

У вызывающего объекта отсутствует необходимое разрешение.

-или-

Параметр path указывает файл, доступный только для чтения.

-или-

path указывает файл, который скрыт.

платформа .NET Framework и .NET Core версий старше 2.1: path строка нулевой длины, содержит только пробелы или содержит один или несколько недопустимых символов. Вы можете запросить недопустимые символы с помощью метода GetInvalidPathChars().

path имеет значение null.

Указанный путь, имя файла или оба значения превышают максимальную длину, заданную в системе.

Указан недопустимый путь (например, он ведет на несопоставленный диск).

Ошибка ввода-вывода при создании файла.

Параметр path задан в недопустимом формате.

Комментарии

Параметр path может указывать относительные или абсолютные сведения о пути. Сведения об относительном пути интерпретируются как относительные относительно текущего рабочего каталога. Сведения о том, как получить текущий рабочий каталог, см. в разделе GetCurrentDirectory.

Этот метод эквивалентен перегрузке конструктора FileStream(String, FileMode, FileAccess, FileShare, Int32) . Если указанный файл не существует, он создается; Если он существует и не доступен только для чтения, содержимое заменяется.

По умолчанию полный доступ на чтение и запись к новым файлам предоставляется всем пользователям. Файл открывается с доступом на чтение и запись и должен быть закрыт, прежде чем его сможет открыть другое приложение.

Список распространенных задач ввода-вывода см. в разделе Общие задачи ввода-вывода.

Применяется к

.NET 9 и другие версии
Продукт Версии
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Create(String, Int32, FileOptions, FileSecurity)

Создает или перезаписывает файл по заданному пути с указанием размера буфера и параметров, которые описывают, как создавать или перезаписывать файл. Также указывается значение, определяющее контроль доступа и безопасность аудита для файла.

C#
public static System.IO.FileStream Create (string path, int bufferSize, System.IO.FileOptions options, System.Security.AccessControl.FileSecurity fileSecurity);

Параметры

path
String

Путь и имя создаваемого файла.

bufferSize
Int32

Число байтов, буферизируемых при чтении и записи в данный файл.

options
FileOptions

Одно из значений FileOptions, которое описывает, как создавать или перезаписывать файл.

fileSecurity
FileSecurity

Объект FileSecurity, определяющий правила управления доступом и аудита безопасности для файла.

Возвращаемое значение

Новый файл с заданным размером буфера, параметрами файла и уровнем безопасности.

Исключения

У вызывающего объекта отсутствует необходимое разрешение.

-или-

Параметр path указывает файл, доступный только для чтения.

-или-

path указывает файл, который скрыт.

платформа .NET Framework и .NET Core версий старше 2.1: path строка нулевой длины, содержит только пробелы или содержит один или несколько недопустимых символов. Вы можете запросить недопустимые символы с помощью метода GetInvalidPathChars().

path имеет значение null.

Указанный путь, имя файла или оба значения превышают максимальную длину, заданную в системе.

Указан недопустимый путь (например, он ведет на несопоставленный диск).

Ошибка ввода-вывода при создании файла.

Параметр path задан в недопустимом формате.

Комментарии

Параметр path может указывать относительные или абсолютные сведения о пути. Относительные сведения о пути интерпретируются как относительные относительно текущего рабочего каталога. Сведения о том, как получить текущий рабочий каталог, см. в разделе GetCurrentDirectory.

Этот метод эквивалентен перегрузке конструктора FileStream(String, FileMode, FileAccess, FileShare, Int32) . Если указанный файл не существует, он создается; Если он существует и не доступен только для чтения, содержимое будет заменено.

По умолчанию полный доступ на чтение и запись к новым файлам предоставляется всем пользователям. Файл открывается с доступом для чтения и записи и должен быть закрыт, прежде чем его сможет открыть другое приложение.

Список распространенных задач ввода-вывода см. в разделе Общие задачи ввода-вывода.

Важно!

Этот метод был перенесен в .NET Core 3.1 в следующем виде: Create(FileInfo, FileMode, FileSystemRights, FileShare, Int32, FileOptions, FileSecurity).

Применяется к

.NET Framework 4.8.1 и другие версии
Продукт Версии
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1