FileSystemManager.stat
收藏
我的收藏

基础库 1.15.0 开始支持本方法,这是一个异步方法。

获取文件 Stat 对象。

前提条件
业务背景
使用限制
注意事项
支持沙盒
相关教程

语法

FileSystemManager.stat(options)

参数说明

options 为 object 类型,属性如下:

属性名类型默认值必填说明最低支持版本
recursivebooleanfalse
是否递归获取目录下的每个文件的 Stat 信息
2.60.0
pathstring
文件/目录路径
1.15.0
successfunction
接口调用成功的回调函数
1.15.0
failfunction
接口调用失败的回调函数
1.15.0
completefunction
接口调用结束的回调函数(调用成功、失败都会执行)
1.15.0

回调成功

object 类型,属性如下:

属性名类型说明最低支持版本
errMsgstring

"stat:ok"

1.15.0
statsStat | array

当查询结果是多个时,为 StatItem 数组类型;当结果唯一时,为 Stat 对象类型

2.60.0

stats 参数说明

属性

类型

说明

StatItem

object


StatItem 类型说明

object 类型,属性如下:

属性

类型

说明

path


string


以传参 path 为根路径的相对路径


Stat


object


与路径相对应的 Stat 对象


回调失败

object 类型,属性如下:

属性名类型说明最低支持版本
errMsgstring
"stat:fail " + 详细错误信息
1.15.0

错误码

errNoerrMsg说明最低支持版本
20000stat:fail path is invalid

path 参数错误

1.99.0
21101stat:fail permission denied, stat %s

文件路径不可读

1.99.0
21102stat:fail no such file or directory, stat %s

path 路径不存在

1.99.0

扫码体验

请使用字节宿主APP扫码

代码示例

开发者工具中预览

// 【示例 1】查询单一文件 stat:
const fileSystemManager = tt.getFileSystemManager();

tt.chooseImage({
  success(res) {
    const tempFile = res.tempFilePaths[0];
    fileSystemManager.stat({
      path: tempFile,
      success(res) {
        console.log("是否是目录:", res.stat.isDirectory());
        console.log("是否是文件:", res.stat.isFile());
      },
      fail(res) {
        console.log("调用失败", res.errMsg);
      },
    });
  },
});

// 【示例 2】递归查询用户目录 stat:
fs.stat({
  path: `ttfile://user`,
  recursive: true,
  success: (res) => {
    if (Array.isArray(res.stats)) {
      res.stats.forEach(({ path, stat }) => {
        console.log(path, stat.isDirectory());
      });
    } else {
      console.log(res.stats.isDirectory());
    }
  },
});