Flutter 从资产文件夹中读取所有文件

Tah*_*lik 9 android cross-platform ios dart flutter

我有一个资产文件夹,其中有一个选项卡文件夹,然后是一个文件夹列表,每个文件夹都包含一些文件

在此处输入图片说明

现在我想读取 tabs 文件夹中所有文件夹的名称以及 tabs 文件夹的每个子文件夹中的所有文件,即命名为 sound 1, sound 2, sound 3 .....

简单来说,我想读取我的资产文件夹中所有文件和文件夹的名称。请任何人帮忙。谢谢,

Spa*_*atz 10

即使您仅在 中指定了资产文件夹pubspec.yaml,flutter 编译器也会在文件中列出这些文件夹中的所有AssetManifest.json文件。我们所要做的就是阅读这个文件:

final manifestJson = await DefaultAssetBundle.of(context).loadString('AssetManifest.json');
final images = json.decode(manifestJson).keys.where((String key) => key.startsWith('assets/images'));
Run Code Online (Sandbox Code Playgroud)

  • 可以在没有上下文的情况下以这种方式使用 ```final manifestJson = wait rootBundle.loadString('AssetManifest.json')``` (5认同)
  • @Taha Malik 您必须在 pubspec.yaml 中仅放置文件夹名称(带有尾部斜杠),而不是资产文件名。 (2认同)