FileSystemManager.rename收藏我的收藏
收藏
我的收藏基础库 1.15.0 开始支持本方法,这是一个异步方法。
重命名文件,可以把文件从 oldPath 移动到 newPath。
前提条件 | 无 |
业务背景 | 无 |
使用限制 | 无 |
注意事项 | 因为开发者只有在 ttfile://user 目录下才有写的权限,因此 rename 只能在用户目录下进行。 |
相关教程 | 无 |
语法
FileSystemManager.rename(options)
参数说明
options 为 object 类型,属性如下:
属性名 | 类型 | 默认值 | 必填 | 说明 | 最低支持版本 |
---|---|---|---|---|---|
oldPath | string | 是 | 源文件路径,可以是普通文件或目录,必须以 ttfile://user 开头 | 1.15.0 | |
newPath | string | 是 | 新文件路径,必须以 ttfile://user 开头 | 1.15.0 | |
success | function | 否 | 接口调用成功的回调函数 | 1.15.0 | |
fail | function | 否 | 接口调用失败的回调函数 | 1.15.0 | |
complete | function | 否 | 接口调用结束的回调函数(调用成 功、失败都会执行) | 1.15.0 |
回调成功
object 类型,属性如下:
属性名 | 类型 | 说明 | 最低支持版本 |
---|---|---|---|
errMsg | string | "FileSystemManager.rename:ok" | 1.15.0 |
回调失败
object 类型,属性如下:
属性名 | 类型 | 说明 | 最低支持版本 |
---|---|---|---|
errMsg | string | "FileSystemManager.rename:fail" + 详细错误信息 | 1.15.0 |
错误码
errNo | errMsg | 说明 | 最低支持版本 |
---|---|---|---|
20000 | rename:fail oldPath is invalid | oldPath 参数错误 | 1.99.0 |
20000 | rename:fail newPath is invalid | newPath 参数错误 | 1.99.0 |
20001 | rename:fail param should be xxx, but got xxx | 参数校验错误 | 1.99.0 |
21101 | rename:fail newPath is invalid | 无操作权限(源路径不可读/目标路径不可写) | 1.99.0 |
21102 | rename:fail no such file or directory, rename {oldPath_value} -> {newPath_value} | 源文件不存在或目标文件的父级目录不存在 | 1.99.0 |
21103 | rename:fail operation not permitted, rename {oldPath_value} | 类型错误(类型不一致) | 1.99.0 |
21104 | rename:fail user dir saved file size limit exceeded | 大小超出限制 | 1.99.0 |
代码示例
const fileSystemManager = tt.getFileSystemManager(); fileSystemManager.getSavedFileList({ success(res) { res.fileList.forEach(removeExt); }, fail(res) { console.log("获取失败", res.errMsg); }, }); /** * @param {*} fileItem * @param {string} fileItem.filePath * @param {number} fileItem.createTime * @param {number} fileItem.size */ function removeExt(fileItem) { console.log(`移除 ${fileItem.filePath} 的 ext`); const newPath = fileItem.filePath.replace(/(\..+)?$/, ""); fileSystemManager.rename({ oldPath: fileItem.filePath, newPath, success(_res) { console.log("重命名成功"); }, fail(res) { console.log("重命名失败", res.errMsg); }, }); }
点击纠错