我有一个文本文件(.txt),我想成为以后可以扫描的资产。
在pubspec.yaml中,我确保:
flutter: assets: - res/my_file.txt
存在。该文件位于res/我制作的文件夹中,与lib/android/和ios/
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);
但是,当我使用fileNamelike时'assets/res/my_file.txt',出现错误:Unable to load asset: assets/res/my_file.txt。
fileName
'assets/res/my_file.txt'
Unable to load asset: assets/res/my_file.txt
还值得注意的是,我正在尝试通过单元测试来做到这一点。有关如何正确执行此操作的任何想法?谢谢!
文件夹名称“ assets”不是神奇添加的。更新您的信息pubspec.yaml以包含资产的完整路径。
pubspec.yaml
flutter: assets: - assets/res/my_file.txt