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

FileNotFoundException

Класс FileNotFoundException наследует IOException. Если каталог есть, а файла "abcde.txt" нет, File.ReadAllText бросает именно его, а не DirectoryNotFoundException. Путь к файлу доступен в свойстве FileName.

Синтаксис

string text = File.ReadAllText("abcde.txt"); catch (FileNotFoundException ex) { string name = ex.FileName; }

Пример

Давайте поймать отсутствующий файл "abcde.txt":

using System; using System.IO; class Program { static void Main() { try { File.ReadAllText("abcde.txt"); } catch (FileNotFoundException) { Console.WriteLine("fail"); } } }

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

"fail"

Пример

Давайте проверить свойство FileName:

using System; using System.IO; class Program { static void Main() { try { File.ReadAllText("abcde.txt"); } catch (FileNotFoundException ex) { Console.WriteLine(ex.FileName.Contains("abcde")); } } }

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

True

Пример

Давайте перехватить его как IOException:

using System; using System.IO; class Program { static void Main() { try { File.ReadAllText("abcde.txt"); } catch (IOException ex) { Console.WriteLine(ex is FileNotFoundException); } } }

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

True

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

  • исключение IOException,
    которое является базой для FileNotFoundException
  • исключение DirectoryNotFoundException,
    которое возникает при отсутствии папки
  • класс Exception,
    в иерархии которого лежит FileNotFoundException
  • исключение UnauthorizedAccessException,
    которое мешает открыть существующий файл
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить