Объект для работы с файловой системой
30.03.2019
Объект для работы с файловой системой создаётся с помощью конструктора CreateFile:
app.CreateFile( str file, (str) mode );
Параметры:
- file - полный путь к файлу
- mode - режим работы с файлом:
- "r" - только чтение
- "rw" - чтение и запись
Объект работает с файлами в текстовом и двоичном формате.
Базовый пример
Выполнить в DS
Методы:
- Close() - закрывает файл
Выполнить в DS
myObject.Close() );
- GetLength():int - возвращает длину файла в байтах
Выполнить в DS
app.ShowPopup( myObject.GetLength() );
- GetPointer():int - возвращает позицию файлового указателя в байтах
Выполнить в DS
app.ShowPopup( myObject.GetPointer() );
- GetType():str - возвращает тип объекта
Выполнить в DS
app.ShowPopup( myObject.GetType() );
- ReadData( int len, (str) mode ) - читает двоичные данные в заданном режиме:
- Hex - список значений в шестнадцатиричном формате
- Int - список значений в целом формате
- Text - последовательность байтов
Выполнить в DS
app.ShowPopup( myObject.ReadData( 2 ));
- ReadNumber( (str) type ) - читает число в заданном формате:
- Byte - 8-разрядное целое
- UByte - 8-разрядное целое без знака
- Bool - булев (true или false)
- Float - 32-разрядное с плавающей запятой
- FloatLE
- Long - 64-разрядное целое
- LongLE
- Short - 16-разрядное целое
- UShort - 16-разрядное целое без знака
- ShortLE
- UShortLE
- Int - 32-разрядное целое
- UInt - 32-разрядное целое без знака
- IntLE
- UIntLE
Выполнить в DS
app.ShowPopup( myObject.ReadNumber( 'Byte' ) );
- ReadText( (str) type ) - читает текстовой файл. Тип данных:
- UTF - данные в кодировке UTF-8
- line - чтение строками (до символа '\n')
- char - чтение 16-битных символов
Выполнить в DS
app.ShowPopup( myObject.ReadText( 'UTF-8' ) );
- ReadTextAsync( (str) type, callback) - читает текстовой файл асинхронно. Тип данных:
- UTF - данные в кодировке UTF-8
- line - чтение строками (до символа '\n')
- char - чтение 16-битных символов
Выполнить в DS
app.ShowPopup( myObject.ReadTextAsync( 'UTF-8',function(){ } ) );
- Seek( int offset ) - задаёт позицию файлового указателя
Выполнить в DS
myObject.Seek( 0 );
- SetLength( int len ) - установливает длину файла в байтах
Выполнить в DS
myObject.SetLength( 4 );
- Skip( int bytes ) - задаёт количество байтов, которые нужно пропустить
Выполнить в DS
myObject.Skip( 2 );
- WriteData( [] data, (str) mode ) - записывает двоичные данные в режиме:
- 'Hex' - список значений в шестнадцатиричном формате
- 'Int' - список значений в целом формате
- 'Text' - последовательность байтов
Выполнить в DS
myObject.WriteData( '40,60,60', 'int' );
- WriteNumber( float data, (str) type ) - записывает число в заданном формате:
- Byte - 8-разрядное целое
- UByte - 8-разрядное целое без знака
- Bool - булев (true или false)
- Float - 32-разрядное с плавающей запятой
- FloatLE
- Long - 64-разрядное целое
- LongLE
- Short - 16-разрядное целое
- UShort - 16-разрядное целое без знака
- ShortLE
- UShortLE
- Int - 32-разрядное целое
- UInt - 32-разрядное целое без знака
- IntLE
- UIntLE
Выполнить в DS
myObject.WriteNumber( 50, 'byte' );
- WriteText( str data, (str) type ) - записывает текстовой файл. Тип данных:
- bytes - байт (8 бит)
- chars - символ (16 бит)
- UTF - данные в кодировке UTF-8
Выполнить в DS
myObject.WriteText( 'Привет', 'chars' );