Функция os.UserCacheDir
Функция os.UserCacheDir возвращает путь к директории,
которая предназначена для хранения кэшированных данных
текущего пользователя. Эта директория используется для
временных файлов, которые могут быть пересозданы при
необходимости, в отличие от пользовательских настроек,
которые хранятся в директории, возвращаемой функцией
os.UserConfigDir. Функция не принимает параметров
и возвращает строку с путем и ошибку, если определить
директорию не удалось.
Синтаксис
os.UserCacheDir()
Пример
Давайте получим путь к директории для кэша пользователя:
package main
import (
"fmt"
"os"
)
func main() {
dir, err := os.UserCacheDir()
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println(dir)
}
Результат выполнения кода (на Unix-системах):
"/home/user/.cache"
Результат выполнения кода (на Windows):
"C:\\Users\\user\\AppData\\Local"
Пример
Давайте создадим файл в директории для кэша и запишем в него данные:
package main
import (
"fmt"
"os"
"path/filepath"
)
func main() {
cacheDir, err := os.UserCacheDir()
if err != nil {
fmt.Println("Error:", err)
return
}
filePath := filepath.Join(cacheDir, "myapp", "cache.txt")
err = os.MkdirAll(filepath.Dir(filePath), 0755)
if err != nil {
fmt.Println("Error creating directory:", err)
return
}
data := []byte("cached data")
err = os.WriteFile(filePath, data, 0644)
if err != nil {
fmt.Println("Error writing file:", err)
return
}
fmt.Println("File created:", filePath)
}
Результат выполнения кода:
"File created: /home/user/.cache/myapp/cache.txt"
Смотрите также
-
функцию
os.UserHomeDir,
которая возвращает путь к домашней директории пользователя -
функцию
os.UserConfigDir,
которая возвращает путь к директории для настроек пользователя -
функцию
os.TempDir,
которая возвращает путь к директории для временных файлов -
функцию
os.Executable,
которая возвращает путь к исполняемому файлу текущего процесса