Класс RandomAccessFile
Случайный доступ к данным в файле.
Объекты RandomAccessFile получаются путём вызова метода open для объекта File.
Класс RandomAccessFile имеет как асинхронные, так и синхронные методы. Асинхронные методы возвращают Future, в то время как синхронные методы возвращают результат напрямую и блокируют текущий изолят до готовности результата.
Одновременно на данном экземпляре RandomAccessFile может выполняться не более одного асинхронного метода. Если другой асинхронный метод вызывается, когда уже выполняется другой, выбрасывается исключение FileSystemException.
Если асинхронный метод ожидает завершения, вызов синхронных методов также невозможен. Это также приведёт к исключению FileSystemException.
Конструкторы
- RandomAccessFile()
Свойства
- hashCode → int только для чтения, унаследованное
- Код хэша этого объекта.
- path → String только для чтения
- Путь к файлу, лежащему в основе этого файла с произвольным доступом.
- runtimeType → Type только для чтения, унаследованное
- Представление типа объекта во время выполнения.
Методы
- close(
) → Future< void> - Закрывает файл.
- closeSync(
) → void - Синхронно закрывает файл.
- flush(
) → Future< RandomAccessFile> - Очищает содержимое файла в дисковой системе.
- flushSync(
) → void - Синхронно очищает содержимое файла в дисковой системе.
- length(
) → Future< int> - Получает длину файла.
- lengthSync(
) → int - Синхронно получает длину файла.
- lock(
[FileLock mode = FileLock.exclusive, int start = 0, int end = -1]) → Future< RandomAccessFile> - Блокирует файл или часть файла.
- lockSync(
[FileLock mode = FileLock.exclusive, int start = 0, int end = -1]) → void - Синхронно блокирует файл или часть файла.
- noSuchMethod(
Invocation invocation) → dynamic унаследованное - Вызывается при обращении к несуществующему методу или свойству.
- position(
) → Future< int> - Получает текущую позицию байта в файле.
- positionSync(
) → int - Синхронно получает текущую позицию байта в файле.
- read(
int count) → Future< Uint8List> - Считывает до
countбайтов из файла. - readByte(
) → Future< int> - Считывает байт из файла.
- readByteSync(
) → int - Синхронно считывает один байт из файла.
- readInto(
List< int> buffer, [int start = 0, int? end]) → Future< int> - Считывает байты в существующий
buffer. - readIntoSync(
List< int> buffer, [int start = 0, int? end]) → int - Синхронно считывает в существующий
buffer. - readSync(
int count) → Uint8List - Синхронно считывает до
countбайтов из файла - setPosition(
int position) → Future< RandomAccessFile> - Устанавливает позицию байта в файле.
- setPositionSync(
int position) → void - Синхронно устанавливает позицию байта в файле.
- toString(
) → String переопределён - Возвращает удобочитаемую строку для данного файла с произвольным доступом.
- truncate(
int length) → Future< RandomAccessFile> - Обрезает (или расширяет) файл до
lengthбайтов. - truncateSync(
int length) → void - Синхронно обрезает (или расширяет) файл до
lengthбайтов. - unlock(
[int start = 0, int end = -1]) → Future< RandomAccessFile> - Разблокирует файл или часть файла.
- unlockSync(
[int start = 0, int end = -1]) → void - Синхронно разблокирует файл или часть файла.
- writeByte(
int value) → Future< RandomAccessFile> - Записывает один байт в файл.
- writeByteSync(
int value) → int - Синхронно записывает один байт в файл.
- writeFrom(
List< int> buffer, [int start = 0, int? end]) → Future< RandomAccessFile> - Записывает из
bufferв файл. - writeFromSync(
List< int> buffer, [int start = 0, int? end]) → void - Синхронно записывает из
bufferв файл. - writeString(
String string, {Encoding encoding = utf8}) → Future< RandomAccessFile> - Записывает строку в файл с использованием указанного Encoding.
- writeStringSync(
String string, {Encoding encoding = utf8}) → void - Синхронно записывает строку в файл с использованием указанного Encoding.
Операторы
- operator ==(
Object other) → bool унаследованное - Оператор равенства.
© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.18.5/dart-io/RandomAccessFile-class.html