DroidScript
DroidScript
учимся и разрабатываем

Объект для работы с файловой системой

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' );
© 2016-2024 
actech