Чтение и запись в файлы в Go
Чтение и запись в файлы
24
Одной из частых задач программистов является чтение и запись данных в файлы. Например, при работе с конфигурационными файлами, логами, базами данных и т.д. В этом курсе мы рассмотрим базовые операции чтения и записи файлов в Go.
Для начала работы с файлами в Go необходимо открыть файл. Для этого используется функция os.Open
, которая возвращает файловый дескриптор и ошибку, если файл не был найден.
Например, чтобы открыть файл file.txt
для чтения:
file, err := os.Open("file.txt") if err != nil { panic(err) } defer file.Close()
В этом коде мы использовали функцию defer
, чтобы убедиться, что файл будет закрыт после чтения.
Для чтения файла мы можем использовать буферизованный ввод с помощью пакета bufio
.
Например, для чтения файла построчно:
scanner := bufio.NewScanner(file) for scanner.Scan() { line := scanner.Text() fmt.Println(line) } if err := scanner.Err(); err != nil { panic(err) }
Чтобы записать данные в файл в Go, мы можем использовать функцию os.Create
или os.OpenFile
для создания или открытия файла с определенными правами доступа.
Например, чтобы создать файл output.txt
для записи:
file, err := os.Create("output.txt") if err != nil { panic(err) } defer file.Close() file.WriteString("Hello, world!")
В этом коде мы использовали функцию WriteString
для записи строки в файл.
Кроме того, в Go есть много других функций для более сложных операций чтения и записи файлов. Изучив этот курс, вы сможете осуществлять базовые операции работы с файлами в Go.
March 25, 2023