FileSystemWritableFileStream - 带有额外便利方法的 WritableStream 对象
FileSystemWritableFileStream
是 File System Access API
的接口,它是一个带有额外便利方法的 WritableStream
对象,它对磁盘上的单个文件进行操作。该接口通过 FileSystemFileHandle.createWritable()
方法访问。
属性
从其父接口 WritableStream
继承了属性。
方法
从其父接口 WritableStream
继承了方法。
FileSystemWritableFileStream.write
将内容写入当前文件的游标偏移处。
FileSystemWritableFileStream.seek
将当前文件光标偏移更新到指定的位置(以字节为单位)。
FileSystemWritableFileStream.truncate
将与流关联的文件大小调整为指定的字节大小。
实例
该异步函数打开 “保存文件” 选择器,一旦选择了一个文件,它就会返回一个 FileSystemFileHandle
。然后使用 FileSystemFileHandle.createWritable()
方法从中创建可写流。
然后将用户定义的 Blob
写入随后关闭的流中。
async function saveFile() {
// 创建一个新的句柄
const newHandle = await window.showSaveFilePicker();
// 创建要写入的 FileSystemWritableFileStream
const writableStream = await newHandle.createWritable();
// 写入我们的文件
await writableStream.write(imgBlob);
// 关闭文件并将内容写入磁盘。
await writableStream.close();
}
下面显示了可以传递给 write()
方法的选项的不同实例。
// 只需传入数据(无选项)
writableStream.write(data)
// 从确定的位置将数据写入流
writableStream.write({ type: "write", position: position, data: data })
// 将当前文件游标偏移更新到指定的位置
writableStream.write({ type: "seek", position: position })
// 将文件大小调整为 size 字节长
writableStream.write({ type: "truncate", size: size })
规范
规范 |
---|
File System Access #api-filesystemwritablefilestream |
桌面浏览器兼容性
暂无兼容数据