Метод readAsBytesSync
Метод readAsBytesSync класса File выполняет синхронное чтение всего содержимого файла и возвращает его в виде списка байтов типа Uint8List. Метод не принимает параметров. В отличие от асинхронного метода readAsBytes, выполнение программы приостанавливается до завершения чтения файла. Если файл не существует или не может быть прочитан, будет выброшено исключение FileSystemException.
Синтаксис
file.readAsBytesSync()
Пример
Давайте создадим файл и прочитаем его содержимое в виде байтов:
import 'dart:io';
void main()
{
File file = File('test.txt');
file.writeAsStringSync('abcde');
Uint8List bytes = file.readAsBytesSync();
print(bytes);
}
Результат выполнения кода:
[97, 98, 99, 100, 101]
Пример
Давайте преобразуем полученные байты обратно в строку с помощью utf8.decode:
import 'dart:io';
import 'dart:convert';
void main()
{
File file = File('test.txt');
file.writeAsStringSync('12345');
Uint8List bytes = file.readAsBytesSync();
String res = utf8.decode(bytes);
print(res);
}
Результат выполнения кода:
"12345"
Смотрите также
-
метод
readAsBytes,
который асинхронно читает файл в байты -
метод
readAsStringSync,
который синхронно читает файл в строку -
метод
writeAsBytes,
который записывает байты в файл -
класс
File,
который представляет файл в файловой системе