FileSystemManager.writeFile
收藏我的收藏
基础库 1.15.0 开始支持本方法,这是一个异步方法。
写文件,只能写入用户目录(ttfile://user)。
| 前提条件 | 无 |
| 业务背景 | 无 |
| 使用限制 | 无 |
| 注意事项 | 每个小程序的用户目录存储上限为 10M,不同小程序的用户目录相互隔离。 |
| 支持沙盒 | 否 |
| 相关教程 | 无 |
语法
FileSystemManager.writeFile(options)
参数说明
options 为 object 类型,属性如下:
| 属性名 | 类型 | 默认值 | 必填 | 说明 | 最低支持版本 |
|---|---|---|---|---|---|
| encoding | enum | utf8 | 否 | 指定写入文件的字符编码 | 1.15.0 |
| data | string | arraybuffer | 是 | 要写入的文本或二进制数据 | 1.15.0 | |
| filePath | string | 是 | 要写入的文件路径, 必须以 `ttfile://user` 开头 | 1.15.0 | |
| success | function | 否 | 接口调用成功的回调函数 | 1.15.0 | |
| fail | function | 否 | 接口调用失败的回调函数 | 1.15.0 | |
| complete | function | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) | 1.15.0 |
encoding 的合法值
| 值 | 说明 | 最低支持版本 |
|---|---|---|
| utf-8 | 1.15.0 | |
| ascii | 1.15.0 | |
| base64 | 1.15.0 | |
| binary | ISO-8859-1 | 1.15.0 |
| hex | 十六进制 | 1.15.0 |
| ucs2 | 以小端序读取 | 1.15.0 |
| ucs-2 | 以小端序读取 | 1.15.0 |
| utf16le | 以小端序读取 | 1.15.0 |
| utf-16le | 以小端序读取 | 1.15.0 |
| utf8 | 1.15.0 | |
| latin1 | ISO-8859-1 | 1.15.0 |
回调成功
object 类型,属性如下:
| 属性名 | 类型 | 说明 | 最低支持版本 |
|---|---|---|---|
| errMsg | string | "writeFile:ok" | 1.15.0 |
回调失败
object 类型,属性如下:
| 属性名 | 类型 | 说明 | 最低支持版本 |
|---|---|---|---|
| errMsg | string | "writeFile:fail" + 详细错误信息 | 1.15.0 |
错误码
| errorCode | errMsg | errorType | 说明 | 最低支持版本 |
|---|---|---|---|---|
| 107001 | permission denied, %s %s | D | 对应路径没有权限 请查看参数是否正确 | 1.15.0 |
| 107002 | no such file or directory, %s %s -> | D | 没有对应的文件 请查看参数是否正确 | 1.15.0 |
| 107003 | user dir saved file size limit exceeded | D | 文件大小超过限制 文件过大,请检查文件 | 1.15.0 |
| 107091 | operation fail | F | 小程序框架内部错误,有需要请创建工单咨询 | 1.15.0 |
| 107099 | data is invalid | D | 数据不合法 请查看参数是否正确 | 1.15.0 |
| 107099 | params filePath is required | D | filePath必传 请查看参数是否正确 | 1.15.0 |
| 161799 | params.filePath should be string, but got %s | D | 参数类型不对 请查看参数是否正确 | 1.15.0 |
扫码体验
请使用字节宿主APP扫码
代码示例
const fileSystemManager = tt.getFileSystemManager() const filePath = `ttfile://user/example.txt` fileSystemManager.writeFile({ filePath, encoding: "utf8", data: "example content", success(_res) { console.log("调用成功") const data = fileSystemManager.readFileSync(filePath) console.log("写入的内容为:", data) }, fail(res) { console.log("调用失败", res.errMsg) }, })
