filehandle.write(buffer, offset[, length[, position]])
-
buffer<Buffer> | <TypedArray> | <DataView> -
offset<integer> 要开始写入数据的buffer的起始位置。¥
offset<integer> The start position from withinbufferwhere the data to write begins. -
length<integer> 要从buffer写入的字节数。默认值:buffer.byteLength - offset¥
length<integer> The number of bytes frombufferto write. Default:buffer.byteLength - offset -
position<integer> | <null> 要写入来自buffer的数据的文件的开头偏移量。如果position不是number,则数据将被写入当前位置。有关更多详细信息,请参阅 POSIXpwrite(2)文档。默认值:null¥
position<integer> | <null> The offset from the beginning of the file where the data frombuffershould be written. Ifpositionis not anumber, the data will be written at the current position. See the POSIXpwrite(2)documentation for more detail. Default:null -
返回:<Promise>
¥Returns: <Promise>
将 buffer 写入文件。
¥Write buffer to the file.
这个 promise 是通过一个包含两个属性的对象来实现的:
¥The promise is fulfilled with an object containing two properties:
-
bytesWritten<integer> 写入的字节数¥
bytesWritten<integer> the number of bytes written -
buffer<Buffer> | <TypedArray> | <DataView> 对被写入的buffer的引用。¥
buffer<Buffer> | <TypedArray> | <DataView> a reference to thebufferwritten.
在同一个文件上多次使用 filehandle.write() 而不等待 promise 被履行(或拒绝)是不安全的。对于这种情况,请使用 filehandle.createWriteStream()。
¥It is unsafe to use filehandle.write() multiple times on the same file
without waiting for the promise to be fulfilled (or rejected). For this
scenario, use filehandle.createWriteStream().
在 Linux 上,以追加模式打开文件时,位置写入不起作用。内核会忽略位置参数,并始终将数据追加到文件末尾。
¥On Linux, positional writes do not work when the file is opened in append mode. The kernel ignores the position argument and always appends the data to the end of the file.