• JS API 列表
  • 基础
  • TTML
  • 网络
  • 媒体
  • 地图
  • 文件
  • tt.saveFile
  • tt.getFileInfo
  • tt.openDocument
  • tt.getSavedFileList
  • tt.removeSavedFile
  • tt.getFileSystemManager
  • FileSystemManager
  • Stat
  • 数据缓存
  • 地理位置
  • 设备
  • 画布
  • 界面
  • 页面导航
  • 开放接口
  • 行业开放
  • 第三方平台
  • 其它
  • tt.getFileInfo
    收藏
    我的收藏

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

    获取文件信息。

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

    语法

    tt.getFileInfo(options)

    参数说明

    options 为 object 类型,属性如下:

    属性名类型默认值必填说明最低支持版本
    digestAlgorithmenummd5
    计算文件摘要的算法
    1.81.0
    filePathstring
    要读取的文件路径
    1.15.0
    successfunction
    接口调用成功的回调函数
    1.15.0
    failfunction
    接口调用失败的回调函数
    1.15.0
    completefunction
    接口调用结束的回调函数(调用成功、失败都会执行)
    1.15.0

    digestAlgorithm 的合法值

    说明最低支持版本
    sha1
    sha1 算法
    1.81.0
    md5
    md5 算法
    1.81.0

    回调成功

    object 类型,属性如下:

    属性名类型说明最低支持版本
    sizenumber
    文件大小,以字节为单位
    1.15.0
    digeststring
    按照传入的 digestAlgorithm 计算得出的的文件摘要
    1.15.0
    errMsgstring
    "getFileInfo:ok"
    1.15.0

    回调失败

    object 类型,属性如下:

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

    错误码

    errorCodeerrMsgerrorType说明最低支持版本
    106601permission denied, %s%sD
    路径不可读

    更换文件路径

    1.15.0
    106602no such file or directory, %s%sD
    文件不存在

    更换文件路径

    1.15.0
    106603operation not permitted, %s%sD
    路径不是文件

    更换文件路径

    1.15.0
    106699param filePath is requiredD
    参数错误

    请根据错误信息修改参数类型

    1.15.0
    161799params.filePath should be string, but got %sD
    参数类型不对
    1.15.0

    扫码体验

    请使用字节宿主APP扫码

    代码示例

    开发者工具中预览

    <!-- index.ttml --> <view class="container"> <button type="primary" bindtap="saveFile">保存文件到本地</button> <button type="primary" bindtap="getFile">获取文件信息</button> </view>
    // index.js const url = "https://sf1-cdn-tos.douyinstatic.com/obj/microapp/frontend/download.png" Page({ data: { filePath: "", }, saveFile() { tt.downloadFile({ url, success: (res) => { console.log("临时文件下载成功,下载路径: " + res.tempFilePath) tt.saveFile({ tempFilePath: res.tempFilePath, success: (data) => { tt.showModal({ content: "临时文件保存成功", showCancel: false, }) this.setData({ filePath: data.savedFilePath, }) console.log("文件保存在本地路径: " + data.savedFilePath) }, fail: (res) => { tt.showModal({ content: "临时文件保存失败", showCancel: false, }) }, }) }, fail: (res) => { console.log("下载失败: ", res.errMsg) }, }) }, getFile() { if (!this.data.filePath) { return tt.showToast({ title: "请先保存文件", icon: "none", }) } tt.getFileInfo({ filePath: this.data.filePath, digestAlgorithm: "md5", success: (data) => { // 成功回调返回的参数中,size属性为文件大小,以字节为单位 tt.showModal({ title: "文件信息:", content: "大小:" + data.size + "字节,md5:" + data.digest, showCancel: false, }) }, fail: (res) => { // 当 API 执行失败后调用, 预定义返回消息格式为${API_NAME}:fail console.log("API调用失败: " + res.errMsg, res) tt.showModal({ content: "获取文件信息失败", showCancel: false, }) }, complete(res) { // 当 API 执行完成(无论成功或者失败)后都会调用, 预定义返回消息格式为${API_NAME}:ok / fail console.log("API调用完成: " + res.errMsg) }, }) }, })