首页 > 解决方案 > Flutter 从资产文件夹中读取所有文件

问题描述

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

在此处输入图像描述

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

简而言之,我想读取资产文件夹中所有文件和文件夹的名称。请任何人帮助。谢谢,

标签: androidiosflutterdartcross-platform

解决方案


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

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

推荐阅读