IOException
Класс IOException из System.IO описывает
сбой ввода-вывода. От него наследуют
FileNotFoundException
и DirectoryNotFoundException.
Общий catch (IOException) перехватывает
и эти частные случаи.
Синтаксис
try { File.ReadAllText(path); }
catch (IOException ex) { }
Пример
Давайте поймать IOException при чтении отсутствующего файла:
using System;
using System.IO;
class Program
{
static void Main()
{
try
{
File.ReadAllText("abcde.txt");
}
catch (IOException)
{
Console.WriteLine("fail");
}
}
}
Результат выполнения кода:
"fail"
Пример
Давайте вывести тип перехваченного сбоя:
using System;
using System.IO;
class Program
{
static void Main()
{
try
{
File.ReadAllText("abcde.txt");
}
catch (IOException ex)
{
Console.WriteLine(ex.GetType().Name);
}
}
}
Результат выполнения кода:
"FileNotFoundException"
Пример
Давайте проверить, что сбой наследует 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
Смотрите также
-
исключение
FileNotFoundException,
которое наследует IOException -
исключение
DirectoryNotFoundException,
которое тоже наследует IOException -
класс
Exception,
от которого наследует IOException -
исключение
UnauthorizedAccessException,
которое связано с доступом к файлам