Класс 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.19.6/dart-io/RandomAccessFile-class.html