fs.write(fd, buffer, offset[, length[, position]], callback)
-
fd<integer> -
buffer<Buffer> | <TypedArray> | <DataView> -
offset<integer> 默认值:0¥
offset<integer> Default:0 -
length<integer> 默认值:buffer.byteLength - offset¥
length<integer> Default:buffer.byteLength - offset -
callback<Function>-
err<Error> -
bytesWritten<integer> -
buffer<Buffer> | <TypedArray> | <DataView>
-
将 buffer 写入 fd 指定的文件。
¥Write buffer to the file specified by fd.
offset 确定要写入的缓冲区部分,length 是整数,指定要写入的字节数。
¥offset determines the part of the buffer to be written, and length is
an integer specifying the number of bytes to write.
position 指从文件开头数据应被写入的偏移量。如果 typeof position !== 'number',则数据将写入当前位置。请参见 pwrite(2)。
¥position refers to the offset from the beginning of the file where this data
should be written. If typeof position !== 'number', the data will be written
at the current position. See pwrite(2).
回调将被赋予三个参数 (err, bytesWritten, buffer),其中 bytesWritten 指定从 buffer 写入了多少字节。
¥The callback will be given three arguments (err, bytesWritten, buffer) where
bytesWritten specifies how many bytes were written from buffer.
如果此方法作为其 util.promisify() 版本被调用,则返回具有 bytesWritten 和 buffer 属性的 Object 的 promise。
¥If this method is invoked as its util.promisify()ed version, it returns
a promise for an Object with bytesWritten and buffer properties.
在同一个文件上多次使用 fs.write() 而不等待回调是不安全的。对于这种情况,建议使用 fs.createWriteStream()。
¥It is unsafe to use fs.write() multiple times on the same file without waiting
for the callback. For this scenario, fs.createWriteStream() is
recommended.
在 Linux 上,以追加模式打开文件时,位置写入不起作用。内核会忽略位置参数,并始终将数据追加到文件末尾。
¥On Linux, positional writes don't 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.