FileSystemWritableFileStream
注意:此功能在Web Workers中可用。
FileSystemWritableFileStream
是 文件系统 API 的一个接口,它是一个具有额外便捷方法的 WritableStream
对象,用于操作磁盘上的单个文件。可以通过 FileSystemFileHandle.createWritable()
方法访问该接口。
实例属性
继承自其父级 WritableStream
的属性。
实例方法
继承自其父级 WritableStream
的方法。
FileSystemWritableFileStream.write()
-
将内容写入调用该方法的文件,位于当前文件光标偏移量处。
FileSystemWritableFileStream.seek()
-
将当前文件光标偏移量更新到指定的位置(以字节为单位)。
FileSystemWritableFileStream.truncate()
-
调整与流关联的文件的大小,使其成为指定的大小(以字节为单位)。
示例
以下异步函数打开“保存文件”选择器,在选择文件后返回 FileSystemFileHandle
。由此,使用 FileSystemFileHandle.createWritable()
方法创建可写流。
然后将文本字符串写入流,随后关闭流。
js
async function saveFile() {
// create a new handle
const newHandle = await window.showSaveFilePicker();
// create a FileSystemWritableFileStream to write to
const writableStream = await newHandle.createWritable();
// write our file
await writableStream.write("This is my file content");
// close the file and write the contents to disk.
await writableStream.close();
}
以下示例显示了可以传递给 write()
方法的不同选项。
js
// just pass in the data (no options)
writableStream.write(data);
// writes the data to the stream from the determined position
writableStream.write({ type: "write", position, data });
// updates the current file cursor offset to the position specified
writableStream.write({ type: "seek", position });
// resizes the file to be size bytes long
writableStream.write({ type: "truncate", size });
规范
规范 |
---|
文件系统标准 # api-filesystemwritablefilestream |
浏览器兼容性
BCD 表格仅在启用 JavaScript 的浏览器中加载。