Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗goSpEdFd 197 of 280 menu
◀ ▶

Папка файлов внутри программы в Go

Целую папку кладут в переменную специального типа из стандартной библиотеки. В директиве указывают имя каталога относительно файла с кодом, а не один файл.

Тип набора хранит дерево вшитых файлов. Пакет подключают обычным импортом, потому что имя типа пишут в объявлении переменной. Путь в ReadFile пишут с прямым слэшем, даже на Windows; при ошибке проверяют err.

В каталоге files лежит hello.txt; вшиваем папку и читаем файл по пути:

package main import ( "embed" "fmt" ) //go:embed files var box embed.FS func main() { data, err := box.ReadFile("files/hello.txt") if err != nil { fmt.Println("error") return } fmt.Println(string(data)) }

Содержимое files/hello.txt при сборке:

hi

Дана папка files с файлом tip.txt:

read me

Опишите набор box для этой папки и выведите текст tip.txt через ReadFile.

Дана папка data с файлом data/a.txt, внутри одна буква "x". Напишите путь аргумента для ReadFile, если директива указывает data.

Скажите, чем импорт пакета для набора отличается от случая с одной строкой и пустым импортом.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить