files
Содержит функции для работы с файлами
Константы
FILES_COMPARATOR
: function = def(f1, f2) = compare(f1, f2)
функция, которая сравнивает два файловых дескриптора
SDCARD
: string Android = path to SDCARD
путь к внешнему хранилищу
Функции
canExecute(f)
- проверяет права на выполнение дескриптора f
canRead(f)
- проверяет права на чтение дескриптора f
canWrite(f)
- проверяет права на запись дескриптора f
copy(src, dst)
- копирует файл src в dst
delete(f)
- удаляет файл или папку. Возвращает 1, если удаление прошло успешно, иначе - 0
exists(f)
- проверяет, существует ли файл или папка. Возвращает 1, если существует, иначе - 0
fclose(f)
- закрывает файл
fileSize(f)
- возвращает размер файла в байтах
flush(f)
- сбрасывает буфер записи в файл
fopen(path, mode = "r")
- открывает файл по пути path
в заданном режиме mode
:
"" - открывает файл или папку для получения информации;
"r" - открывает файл для чтения в текстовом режиме;
"rb" - открывает файл для чтения в бинарном режиме;
"w" - открывает файл для записи в текстовом режиме;
"w+" - открывает файл для дозаписи в текстовом режиме;
"wb" - открывает файл для записи в бинарном режиме;
"wb+" - открывает файл для дозаписи в бинарном режиме.
Возвращает дескриптор файла, который необходим для остальных функций.
Пример
f1 = fopen("text.txt") // открывает файл text.txt для текстового чтения
f2 = fopen("E:/1.dat", "rbwb") // открывает файл 1.dat на диске E для бинарного чтения и записи"
getParent(f)
- возвращает родительский путь для заданного дескриптора f
isDirectory(f)
- проверяет, является ли дескриптор f
папкой. 1 - является, 0 - нет
isFile(f)
- проверяет, является ли дескриптор f файлом. 1 - является, 0 - нет
isHidden(f)
- проверяет, скрыт ли дескриптор f. 1 - скрыт, 0 - нет
lastModified(f)
- возвращает время последнего изменения
listFiles(f)
- возвращает массив с именами файлов в указанной директории.
f - дескриптор папки
Пример
f1 = fopen("E:/examples", "") // открыть папку examples для получения информации
list = listFiles(f1) // получить массив с именами файлов в этой папке
mkdir(f)
- создаёт папку. Возвращает 1, если создание прошло успешно, иначе - 0
mkdirs(f)
- создаёт папки. Возвращает 1, если создание прошло успешно, иначе - 0
readAllBytes(f)
- чтение всех байт файла. Возвращает массив байт файла
Пример
f1 = fopen("file.bin", "rb")
array = readAllBytes(f1)
readBoolean(f)
- чтение boolean-значения (1 байт). Возвращает 0, если байт имеет значение 0, 1 - если значение не равно 0
readByte(f)
- чтение одного байта
readBytes(f, array, offset = 0, length = length(array))
- чтение заданного количества байт в массив array
. Возвращает число прочитанных байт.
Если offset и length не указаны, то читается количество байт равное длине массива.
Если offset и length указаны, то пропускается offset байт и читается length байт в массив array
Пример
f1 = fopen("file.bin", "rb")
array = newarray(2048)
readedCount = readBytes(f1, array) // читает 2048 байт из файла
readedCount = readBytes(f1, array, 10) // читает 2048 байт, начиная с 11 байта
readedCount = readBytes(f1, array, 20, 10) // читает 10 байт, начиная с 21 байта
readChar(f)
- чтение одного символа (2 байта). Возвращает число - код символа
readDouble(f)
- чтение 8 байт (вещественное число двойной точности)
readFloat(f)
- чтение 4 байт (вещественное число)
readInt(f)
- чтение 4 байт (целое число)
readLine(f)
- чтение строки в текстовом режиме
readLong(f)
- чтение 8 байт (длинное целое число)
readShort(f)
- чтение 2 байт (короткое целое число)
readText(f)
- чтение всего файла в текстовом режиме в строку
readUTF(f)
- чтение строки в бинарном режиме
rename(from, to)
- переименование (или перемещение) файла
Пример
f1 = fopen("C:/file1", "i")
f2 = fopen("E:/file2", "i")
rename(f1, f2)
fclose(f1)
fclose(f2)
setLastModified(f, time)
- устанавливает время изменения
setReadOnly(f)
- помечает дескриптор только для чтения
setExecutable(f, executable, ownerOnly = true)
- устанавливает права на выполнение
setReadable(f, readable, ownerOnly = true)
- устанавливает права на чтение
setWritable(f, writable, ownerOnly = true)
- устанавливает права на запись
writeBoolean(f, v)
- запись одного байта boolean (0 или 1) в файл
writeByte(f, v)
- запись одного байта в файл
writeBytes(f, array, offset = 0, length = length(array))
- запись заданного количества байт в файл f
из массива байт array
.
Если offset и length не указаны, то записывается количество байт равное длине массива.
Если offset и length указаны, то пропускается offset байт и записывается length байт
writeChar(f, v)
- запись одного символа (2 байта) в файл. v
может быть как числом (пишется это число), так и строкой (пишется код первого символа)
writeDouble(f, v)
- запись 8 байт (вещественное число двойной точности)
writeFloat(f, v)
- запись 4 байт (вещественное число)
writeInt(f, v)
- запись 4 байт (целое число)
writeLine(f, v)
- запись строки в текстовом режиме Добавляет в конец символ переноса строки
writeLong(f, v)
- запись 8 байт (длинное целое число)
writeShort(f, v)
- запись двух байт (короткое целое число)
writeText(f, v)
- запись всего текста в текстовом режиме. В отличие от writeLine
, не добавляет символ переноса строки
writeUTF(f, v)
- запись строки в бинарном режиме