Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
766 of 1492 menu
◀ ▶

FileMode.CreateNew

FileMode.CreateNew создаёт пустой abcde.txt. Если файл уже существует, бросается IOException - в отличие от Create, который перезаписывает. Вызов через File.Open.

Синтаксис

using FileStream stream = File.Open(path, FileMode.CreateNew);

Пример

Давайте создадим файл впервые:

using System; using System.IO; class Program { static void Main() { if (File.Exists("abcde.txt")) { File.Delete("abcde.txt"); } using (FileStream stream = File.Open("abcde.txt", FileMode.CreateNew)) { Console.WriteLine(stream.Length); } File.Delete("abcde.txt"); } }

Результат выполнения кода:

0

Пример

Давайте поймаем сбой, если файл уже есть:

using System; using System.IO; class Program { static void Main() { File.WriteAllText("abcde.txt", "abcde"); try { using (FileStream stream = File.Open("abcde.txt", FileMode.CreateNew)) { } } catch (IOException) { Console.WriteLine("fail"); } File.Delete("abcde.txt"); } }

Результат выполнения кода:

"fail"

Пример

Давайте сравним с успешным CreateNew:

using System; using System.IO; class Program { static void Main() { if (File.Exists("12345.txt")) { File.Delete("12345.txt"); } using (FileStream stream = File.Open("12345.txt", FileMode.CreateNew)) { Console.WriteLine(File.Exists("12345.txt")); } File.Delete("12345.txt"); } }

Результат выполнения кода:

True

Смотрите также

  • Create,
    создать или обнулить
  • Open,
    только существующий файл
  • FileMode,
    все значения перечисления
  • File.Open,
    открытие с CreateNew
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить