1. ホーム
  2. dart

[解決済み] Flutter - アセットからテキストファイルを読み込む

2023-06-06 13:05:38

質問

テキストファイル(.txt)があるのですが、後でスキャンできるようなアセットにしたいのです。

pubspec.yamlの中で、確認しました。

flutter:
  assets:
    - res/my_file.txt

は存在します。このファイルは res/ と同じ階層にある、私が作成した lib/android/ios/

ウィジェットではなく、カスタムクラスからファイルを読み込もうとしています。

ドキュメントによると、私はこのインポートを使用することになっています。

import 'package:flutter/services.dart' show rootBundle;

というように読み始めます。

/// Assumes the given path is a text-file-asset.
Future<String> getFileData(String path) async {
  return await rootBundle.loadString(path);
}

そして、実際のデータを取得するには、次のようにします。

String data = await getFileData(fileName);

しかし fileName のように 'assets/res/my_file.txt' は、エラーが発生します。 Unable to load asset: assets/res/my_file.txt .

私はこれをユニットテストから行おうとしていることも注目すべき点です。これを適切に行う方法について何かアイデアがありますか?ありがとうございます!

どのように解決するのですか?

assets"というフォルダー名が魔法のように追加されない。あなたの pubspec.yaml を更新して、アセットへのフルパスを含めるようにしてください。

flutter:
  assets:
    - assets/res/my_file.txt