# FileSystemManager.write(Object object)

基础库 2.16.1 开始支持,低版本需做兼容处理

Promise 风格 调用:不支持

小程序插件:支持,需要小程序基础库版本不低于 2.19.2

写入文件

# 参数

# Object object

属性 类型 默认值 必填 说明
fd string 文件描述符。fd 通过 FileSystemManager.openFileSystemManager.openSync 接口获得
data string/ArrayBuffer 写入的内容,类型为 String 或 ArrayBuffer
offset number 0 只在 data 类型是 ArrayBuffer 时有效,决定 arrayBuffe 中要被写入的部位,即 arrayBuffer 中的索引,默认0
length number 只在 data 类型是 ArrayBuffer 时有效,指定要写入的字节数,默认为 arrayBuffer 从0开始偏移 offset 个字节后剩余的字节数
encoding string utf8 只在 data 类型是 String 时有效,指定写入文件的字符编码,默认为 utf8
合法值 说明
ascii
base64
binary
hex
ucs2 以小端序读取
ucs-2 以小端序读取
utf16le 以小端序读取
utf-16le 以小端序读取
utf-8
utf8
latin1
position number 指定文件开头的偏移量,即数据要被写入的位置。当 position 不传或者传入非 Number 类型的值时,数据会被写入当前指针所在位置。
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行)

# object.success 回调函数

# 参数
# Object res
属性 类型 说明
bytesWritten number 实际被写入到文件中的字节数(注意,被写入的字节数不一定与被写入的字符串字符数相同)

# object.fail 回调函数

# 参数
# Object res
属性 类型 说明
errMsg string 错误信息
合法值 说明
bad file descriptor 无效的文件描述符
fail permission denied 指定的 fd 路径没有写权限
fail sdcard not mounted android sdcard 挂载失败

# 示例代码

const fs = wx.getFileSystemManager()
// 打开文件
fs.open({
  filePath: `${wx.env.USER_DATA_PATH}/hello.txt`,
  flag: 'a+',
  success(res) {
    // 写入文件
    fs.write({
      fd: res.fd,
      data: 'some text',
      success(res) {
        console.log(res.bytesWritten)
      }
    })
  }
})