Файлы

Ниже описаны функции для работы с файлами и директориями.

Типы

finfo

Тип finfo используется для получения информации о файле и имеет следующие поля:

  • str Name - имя файла

  • int Size - размер файла в байтах

  • int Mode - флаги файла и разрешения

  • time Time - время последнего изменения

  • bool IsDir - true, если это директория

Функции

AppendFile(str filename, buf|str data)

Функция AppendFile добавляет данные переменной типа buf или str в конец файла filename. Если файл не существует, то AppendFile создает его с правами 0644.

ChDir(str dirname)

Функция ChDir изменяет текущую директорию.

CopyFile(str src, str dest) int

Функция CopyFile копирует файл src в файл dest. Если файл dest существует, то он будет перезаписан. Функция возвращает количество скопированных байт.

CreateDir(str dirname)

Функция CreateDir создает директорию с именем dirname, включая все необходимые родительские директории. Если dirname уже существующая директория, то CreateDir ничего не делает.

FileInfo(str name) finfo

Функция FileInfo получает информацию об указанном файле и возвращает структуру finfo.

GetCurDir() str

Функция GetCurDir возвращает текущую директорию.

Md5File(str filename) str

Функция Md5File возвращает MD5 хэш указанного файла в виде шестнадцатеричной строки.

ReadDir(str dirname) arr.finfo

Функция ReadDir читает директорию с указанным именем и возвращает список её поддиректорий и файлов.

ReadFile(str filename) str

Функция ReadFile читает указанный файл и возвращает его содержимое в виде строки.

ReadFile(str filename, buf out) buf

Функция ReadFile читает файл filename в переменную out типа buf и возвращает эту переменную.

ReadFile(str filename, int offset, int length) buf

Функция ReadFile читает данные из файла filename начиная со смещения offset и длиной length. Если offset меньше нуля, то смещение считается от конца к началу файла.

Remove(str name)

Функция Remove удаляет файл или пустую директорию.

RemoveDir(str dirname)

Функция RemoveDir удаляет директорию dirname включая всё её содержимое.

Rename(str oldpath, str newpath)

Функция Rename переименовывает (переносит) oldpath в newpath. Если newpath уже существует и является файлом, то Rename заменяет его.

SetFileTime(str name, time modtime)

Функция SetFileTime изменяет время последней записи у указанного файла.

Sha256File(str filename) str

Функция Sha256File возвращает SHA256 хэш указанного файла в виде шестнадцатеричной строки.

TempDir() str

Функция TempDir возвращает временную директорию по умолчанию.

TempDir(str path, str prefix) str

Функция TempDir создает новую временную директорию в директории path с именем, начинающемся на prefix и возвращает полное имя этой новой директории. Если path пустая строка, TempDir использует временную директорию по умолчанию.

WriteFile(str filename, buf|str data)

Функция WriteFile записывает данные из переменной типа buf или строки в файл filename. Если файл не существует, то он будет создан с разрешениями 0777, в противном случае, файл будет перезаписан заново.