当前位置: 首页 > 知识库问答 >
问题:

如何在Flutter中列出文件?

艾泽语
2023-03-14
import 'dart:io';
Directory dir = Directory('/storage/emulated/0');
List<FileSystemEntity> file = dir.listSync();

我曾使用该代码列出只列出目录文件。我如何获得该目录中的文件列表?以及如何查找文件/文件夹的权限?

共有1个答案

胡嘉歆
2023-03-14

listSync方法同时列出目录和文件。如果只需要文件,可以筛选输出:

dir.listSync().where((e) => e is File);

如果需要在子目录中递归列出文件,可以使用recursive参数调用:

dir.listSync(recursive: true).where((e) => e is File);

以及如何查找文件/文件夹的权限?

dir.listSync().forEach((e) {
  final mode = e.statSync().mode;
});

mode包含文件系统对象的模式。

权限被编码在这个数字的低16位,并且可以使用modeString getter进行解码。

 类似资料:
  • 这可以通过元数据实现吗?当在父文件夹中创建一个新文件/文件夹时,我是否也可以通过编程方式更新父文件夹的元数据,以便说:“嘿,在这个文件夹中有这些特定的文件?”

  • 脚手架应包含一个容器列表,其中包含一排卡片和文本。我不确定这是否明智,所以如果你有一个如何做得更好的建议。。。这是到目前为止我的代码(没有文本“文本1”段): 目前我不能这样做,因为“返回类型‘List’不是一个‘Widget’,正如闭包上下文所要求的那样。”。

  • 问题内容: 我有这段代码,它从目录中读取所有文件。 效果很好。它使用目录“ text_directory”中所有以“ .txt”结尾的文件填充数组。 如何在 JAR文件中以类似方式读取目录的内容? 因此,我真正想要做的是列出我的JAR文件中的所有图像,这样我就可以加载它们: (之所以有效,是因为“ CompanyLogo”是“硬编码的”,但是JAR文件中的图像数量可以是10到200个可变长度。)

  • 这个问题展示了如何从停止的容器中复制文件。这要求我知道文件的完整路径,包括其文件名。我知道要从中复制文件的目录,但我不知道它的文件名,因为它是动态生成的。如何列出已停止Docker容器中目录中的文件? 如果Docker容器正在运行,那么下面的Docker命令非常有效。但是,如果Docker容器停止,它将失败。 注意:文件不存储在持久卷中。

  • 问题内容: 我正在使用dart包json_serializable进行json序列化。查看flutter文档,它显示了如何反序列化单个对象,如下所示: 但是,我对dart不够熟悉,无法弄清楚如何对项目列表而不是单个实例执行相同的操作。 问题答案: 好吧,您的服务将处理作为地图的响应正文,或相应地处理地图列表。根据您所拥有的代码,您要核算1件商品。 如果响应主体是可迭代的,那么,如果我正确理解了您的

  • 问题内容: 我正在使用命令来获取目录中的文件名,但输出在一行中。 像这样: 我需要一个内置的替代方法来获取文件名,每个文件名都换行,如下所示: 问题答案: 使用该选项(请注意,这是一个“一个”数字,而不是小写字母“ L”),如下所示: 不过,首先请确保您的支持。GNU coreutils(安装在标准Linux系统上)和Solaris一样;但如果有疑问,请使用或或查看文档。例如: