РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
618 of 1593 menu

Функция os.IsNotExist

Функция os.IsNotExist проверяет, указывает ли полученная ошибка на то, что файл или директория не существуют. Она возвращает true, если ошибка связана с отсутствием файла, и false в противном случае. В качестве единственного параметра функция принимает ошибку, возвращаемую операциями с файловой системой.

Синтаксис

os.IsNotExist(err)

Пример

Давайте проверим, вернет ли os.Stat ошибку отсутствия файла:

package main import ( "fmt" "os" ) func main() { _, err := os.Stat("nonexistent.txt") if os.IsNotExist(err) { fmt.Println("file does not exist") } }

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

"file does not exist"

Пример

Давайте проверим, что ошибка отсутствия для директории также распознается:

package main import ( "fmt" "os" ) func main() { _, err := os.Stat("/tmp/missing_dir") if os.IsNotExist(err) { fmt.Println("directory does not exist") } }

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

"directory does not exist"

Пример

Используем os.IsNotExist для обработки ошибок при чтении файла:

package main import ( "fmt" "os" ) func main() { data, err := os.ReadFile("config.txt") if err != nil { if os.IsNotExist(err) { fmt.Println("config file is missing, using defaults") } else { fmt.Println("failed to read config:", err) } return } fmt.Printf("config loaded: %s", data) }

Результат выполнения кода (если файл отсутствует):

"config file is missing, using defaults"

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

  • функцию os.IsExist,
    которая проверяет, существует ли файл или директория
  • функцию os.IsPermission,
    которая проверяет ошибку доступа к файлу
  • функцию os.Stat,
    которая возвращает информацию о файле или директории
  • функцию os.ReadFile,
    которая читает содержимое файла
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить