Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
340 of 1024 menu
◀ ▶

Метод loadString

Метод loadString класса AssetBundle возвращает Future с содержимым файла в UTF-8. Ключ key совпадает с путём в pubspec.yaml. Флаг cache управляет кэшированием строки в памяти.

Синтаксис

Future<String> loadString( String key, { bool cache = true, })

Параметры

Параметр Описание
key Путь к текстовому файлу в активах. Обязательный аргумент.
cache Если true, повторный вызов с тем же ключом вернёт строку из памяти без чтения диска.

Пример

Давайте выведем текст актива на экран:

import 'package:flutter/material.dart'; void main() { runApp(const MaterialApp(home: StringDemo())); } class StringDemo extends StatefulWidget { const StringDemo({super.key}); @override State<StringDemo> createState() => _StringDemoState(); } class _StringDemoState extends State<StringDemo> { String label = 'abcde'; @override void initState() { super.initState(); rootBundle.loadString('assets/data.txt').then((value) { setState(() => label = value.trim()); }).catchError((_) {}); } @override Widget build(BuildContext context) { return Scaffold(body: Center(child: Text(label))); } }

На экране после загрузки появится текст из assets/data.txt или останется 'abcde'.

Пример

Давайте обработаем отсутствующий файл:

import 'package:flutter/services.dart'; void main() async { try { await rootBundle.loadString('assets/missing.txt'); print('abcde'); } catch (_) { print('12345'); } }

Результат выполнения кода

"12345"

Смотрите также

  • метод load,
    который читает бинарные данные
  • метод evict,
    который сбрасывает кэш изображений
  • константа rootBundle,
    через которую вызывают loadString
  • класс AssetBundle,
    к которому относится метод
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить