fs.writeFile(file, data[, options], callback)
| 版本 | 变化 |
|---|---|
| v18.0.0 | 将无效回调传递给 |
| v17.8.0 | 不推荐将具有自己的 |
| v16.0.0 | 如果返回多个错误,则返回的错误可能是 |
| v15.2.0、v14.17.0 | options 参数可能包含 AbortSignal 以中止正在进行的 writeFile 请求。 |
| v14.12.0 |
|
| v14.0.0 |
|
| v10.10.0 |
|
| v10.0.0 |
|
| v7.4.0 |
|
| v7.0.0 |
|
| v5.0.0 |
|
| v0.1.29 | 添加于:v0.1.29 |
参数
file<string> | <Buffer> | <URL> | <integer> 文件名或文件说明符data<string> | <Buffer> | <TypedArray> | <DataView> | <Object>options<Object>|<string>encoding<string> | <null> 默认:'utf8'mode<integer> 默认:0o666flag<string>参看支持文件系统flags.默认:'w'.signal<AbortSignal> 允许中止 in-progress writeFile
callback<Function>err<Error> | <AggregateError>
当file 是文件名时,异步将数据写入文件,如果文件已存在则替换该文件。 data 可以是字符串或缓冲区。
当file 是文件说明符时,行为类似于直接调用fs.write()(推荐)。请参阅下面有关使用文件说明符的说明。
如果 data 是缓冲区,则忽略 encoding 选项。
mode 选项仅影响新创建的文件。有关详细信息,请参阅 。fs.open()
import { writeFile } from 'node:fs';
import { Buffer } from 'node:buffer';
const data = new Uint8Array(Buffer.from('Hello Node.js'));
writeFile('message.txt', data, (err) => {
if (err) throw err;
console.log('The file has been saved!');
});
如果options 是字符串,则它指定编码:
import { writeFile } from 'node:fs';
writeFile('message.txt', 'Hello Node.js', 'utf8', callback);
在同一个文件上多次使用fs.writeFile()而不等待回调是不安全的。对于这种情况,建议使用 。fs.createWriteStream()
类似于fs.readFile - fs.writeFile 是一种方便的方法,它在内部执行多个 write 调用以写入传递给它的缓冲区。对于性能敏感的代码,请考虑使用 。fs.createWriteStream()
可以使用 <AbortSignal> 取消 fs.writeFile() 。取消是"best effort",可能还有一些数据需要写入。
import { writeFile } from 'node:fs';
import { Buffer } from 'node:buffer';
const controller = new AbortController();
const { signal } = controller;
const data = new Uint8Array(Buffer.from('Hello Node.js'));
writeFile('message.txt', data, { signal }, (err) => {
// When a request is aborted - the callback is called with an AbortError
});
// When the request should be aborted
controller.abort();
中止正在进行的请求不会中止单个操作系统请求,而是执行内部缓冲fs.writeFile。
相关用法
- Node.js fs.writeFile()用法及代码示例
- Node.js fs.writeFileSync()用法及代码示例
- Node.js fs.writeSync()用法及代码示例
- Node.js fs.write()用法及代码示例
- Node.js fs.watchFile(filename[, options], listener)用法及代码示例
- Node.js fs.watchFile()用法及代码示例
- Node.js fs.watch()用法及代码示例
- Node.js fs.watch(filename[, options][, listener])用法及代码示例
- Node.js fs.filehandle.datasync()用法及代码示例
- Node.js fs.chmod()用法及代码示例
- Node.js fs.read()用法及代码示例
- Node.js fs.Dirent.isFile()用法及代码示例
- Node.js fs.Dir.closeSync()用法及代码示例
- Node.js fs.fchmodSync()用法及代码示例
- Node.js fs.symlink(target, path[, type], callback)用法及代码示例
- Node.js fs.constants用法及代码示例
- Node.js fs.mkdir()用法及代码示例
- Node.js fs.mkdirSync()用法及代码示例
- Node.js fs.fdatasync()用法及代码示例
- Node.js fs.Dirent.isFIFO()用法及代码示例
- Node.js fs.copyFile()用法及代码示例
- Node.js fs.symlink()用法及代码示例
- Node.js fs.truncate()用法及代码示例
- Node.js fs.openSync()用法及代码示例
- Node.js fs.filehandle.write()用法及代码示例
注:本文由纯净天空筛选整理自nodejs.org大神的英文原创作品 fs.writeFile(file, data[, options], callback)。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。
