BunFile 上调用 .writer() 可以获取一个 FileSink 实例。该实例可用于高效地缓冲数据,并周期性地“刷新”到磁盘。你可以多次写入和刷新。
.write() 方法可以接受字符串或二进制数据。
当内部缓冲区满时,
FileSink 也会自动刷新。你可以通过 highWaterMark 选项配置缓冲区大小。
写入完成后,调用
.end() 来自动刷新缓冲区并关闭文件。
完整文档:FileSink。
BunFile 上调用 .writer() 可以获取一个 FileSink 实例。该实例可用于高效地缓冲数据,并周期性地“刷新”到磁盘。你可以多次写入和刷新。
const file = Bun.file("/path/to/file.txt");
const writer = file.writer();
writer.write("lorem");
writer.write("ipsum");
writer.write("dolor");
writer.flush();
// 继续写入和刷新
.write() 方法可以接受字符串或二进制数据。
w.write("hello");
w.write(Buffer.from("there"));
w.write(new Uint8Array([0, 255, 128]));
writer.flush();
FileSink 也会自动刷新。你可以通过 highWaterMark 选项配置缓冲区大小。
const file = Bun.file("/path/to/file.txt");
const writer = file.writer({ highWaterMark: 1024 * 1024 }); // 1MB
.end() 来自动刷新缓冲区并关闭文件。
writer.end();