FileSystemManager.write
基础库 3.74.0 开始支持本方法,这是一个异步方法。
写入文件
前提条件 | 无 |
业务背景 | 无 |
使用限制 | 无 |
注意事项 | 无 |
相关教程 | 无 |
语法
FileSystemManager.write(options)
参数说明
options 为 object 类型,属性如下:
属性名 | 类型 | 默认值 | 必填 | 说明 | 最低支持版本 |
---|---|---|---|---|---|
length | number | 否 | 只在 data 类型是 ArrayBuffer 时有效,指定要写入的字节数,默认为 ArrayBuffer 从0开始偏移 offset 个字节后剩余的字节数 | 3.74.0 | |
position | number | 否 | 指定文件开头的偏移量,即数据要被写入的位置。当 position 不传或者传入非 Number 类型的值时,数据会被写入当前指针所在位置 | 3.74.0 | |
data | string | Arraybuffer | 是 | 写入的内容,类型为 String 或 ArrayBuffer | 3.74.0 | |
fd | string | 是 | 文件描述符。fd 通过 FileSystemManager.open 或 FileSystemManager.openSync 接口获得 | 3.74.0 | |
encoding | enum | utf8 | 否 | 只在 data 类型是 String 时有效,指定写入文件的字符编码,默认为 utf8 | 3.74.0 |
offset | number | 0 | 否 | 只在 data 类型是 ArrayBuffer 时有效,决定 ArrayBuffer 中要被写入的部位,即 ArrayBuffer 中的索引,默认0 | 3.74.0 |
success | function | 否 | 接口调用成功的回调函数 | 3.74.0 | |
fail | function | 否 | 接口调用失败的回调函数 | 3.74.0 | |
complete | function | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) | 3.74.0 |
encoding 的合法值
值 | 说明 | 最低支持版本 |
---|---|---|
ascii | ascii | 3.74.0 |
base64 | base64 | 3.74.0 |
binary | binary | 3.74.0 |
hex | hex | 3.74.0 |
ucs2 | 以小端序读取 | 3.74.0 |
ucs-2 | 以小端序读取 | 3.74.0 |
utf16le | 以小端序读取 | 3.74.0 |
utf-16le | 以小端序读取 | 3.74.0 |
utf-8 | utf-8 | 3.74.0 |
utf8 | utf8 | 3.74.0 |
latin1 | latin1 | 3.74.0 |
回调成功
object 类型,属性如下:
属性名 | 类型 | 说明 | 最低支持版本 |
---|---|---|---|
errMsg | string | "FileSystemManager.write:ok" | 3.74.0 |
bytesWritten | number | 实际被写入到文件中的字节数(被写入的字节数不一定与被写入的字符串字符数相同) | 3.74.0 |
回调失败
object 类型,属性如下:
属性名 | 类型 | 说明 | 最低支持版本 |
---|---|---|---|
errMsg | string | "FileSystemManager.write:fail" + 详细错误信息 | 3.74.0 |
错误码
errNo | errMsg | 说明 | 最低支持版本 |
---|---|---|---|
20001 | invalid param | 参数错误 | 3.74.0 |
21100 | bad file descriptor | 3.74.0 | |
21101 | system error | 小游戏框架内部错误,有需要请创建工单咨询 | 3.74.0 |
21102 | the maximum size of the file storage limit is exceeded | 3.74.0 | |
21103 | ${encoding} encode error | 3.74.0 | |
21104 | data to write is empty | 3.74.0 | |
21105 | illegal operation on a directory | 3.74.0 | |
21106 | value of length is out of range | 3.74.0 | |
21107 | value of offset is out of range | 3.74.0 | |
21108 | invalid fd | 3.74.0 |
扫码体验
请使用字节宿主APP扫码
代码示例
const fs = tt.getFileSystemManager(); const fd = fs.openSync({ filePath, flag: "w+", }); fs.write({ fd, data: '测试写入的数据', offset: 0, length: 10, position: 0, success: (res) => { console.log('文件写入成功', res); }, fail: (err) => { console.error('文件写入失败', err); } });