fs.writev(fd, buffers[, position], callback)
fd<integer>- 'buffers' <ArrayBufferView[]>
position<integer> | <null> 默认值:nullcallback<Function>err<Error>bytesWritten<integer>- 'buffers' <ArrayBufferView[]>
使用 writev() 将一个 ArrayBufferView 数组写入由 fd 指定的文件。
🌐 Write an array of ArrayBufferViews to the file specified by fd using
writev().
position 是指从文件开头开始写入此数据的偏移量。如果 typeof position !== 'number',数据将会写入当前位置。
回调函数将接受三个参数:err、bytesWritten 和 buffers。bytesWritten 表示从 buffers 中写入了多少字节。
🌐 The callback will be given three arguments: err, bytesWritten, and
buffers. bytesWritten is how many bytes were written from buffers.
如果此方法被 util.promisify() 处理,它将返回一个包含 bytesWritten 和 buffers 属性的 Object 的 Promise。
🌐 If this method is util.promisify()ed, it returns a promise for an
Object with bytesWritten and buffers properties.
在同一个文件上多次使用 fs.writev() 而不等待回调是不安全的。在这种情况下,请使用 fs.createWriteStream()。
🌐 It is unsafe to use fs.writev() multiple times on the same file without
waiting for the callback. For this scenario, use fs.createWriteStream().
在 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.