nodejs 写入文件
2021-03-05 15:30
标签:enc 编码 fse 回调 ref 读取 方式 osi log 文档参考地址 备注: 当 当 简单来说,若是已存在文件 若 功能与参数与该接口的 异步 API 类似,只是参数少了
这里表现为:不同的写入方式 可以点击查看更多 文件系统标志 点击查看更多 nodejs 写入文件 标签:enc 编码 fse 回调 ref 读取 方式 osi log 原文地址:https://www.cnblogs.com/linjunfu/p/12905429.html一、写入文件
1. 常用写入文件方式
const fs = requiere(‘fs‘)
const path = require(‘path‘)
let file = path.resolve(__dirname, ‘./file.txt‘)
let data = {
a: 1
}
// 异步写入数据到文件
fs.writeFile(file, JSON.stringify(data, null, 4), { encoding: ‘utf8‘ }, err => {})
2. 语法说明
/*
* 异步写入数据到文件,(若存在文件,则覆盖写入)
* @param file {string | Buffer | URL | integer} 文件名或文件描述符
* @param data {string | Buffer | TypeArray | DataView} 写入文件的数据
* @param options {Object | string}
* encoding {string | null}, 编码方式,默认值是 ‘utf8‘
* mode {integer}, 默认值是 0o666
* flag {string}, 写入方式,默认值是 ‘w‘,打开文件用于写入。
* 如果文件不存在则创建文件,如果文件存在则截断文件
* @param callback {Function} 回调函数
* err {Error} 写入文件内容时抛出的错误
*/
function writeFile(file, data[, options], callback) {}
file
是文件名时,异步写入数据到文件(若文件已存在,则覆盖文件)file
是文件描述符时,其行为类似于调用 fs.write()
,
file
是文件名时,会被覆盖写入文件file
是文件描述符时,不是覆盖写入,文件不会被替换,文件的原始数据会被保留data
是 Buffer
,则 encoding
会被忽略let data = new Uint8Array(Buffer.from(‘Nodejs‘))
fs.writeFile(file, data, err => {
if (err) throw err
console.log(‘文件已被写入‘)
})
options
是字符串,则该值需是一个 字符串编码类型
fs.writeFile(file, data, ‘utf8‘, err => {})
二、同步创建文件
回调函数
const fs = require(‘fs‘)
fs.writeFileSync(file, data[, options])
三、不同写入方式
options
里面的 flag
参数值表示不同的 文件系统标志
常用的几种方式
四、其他类似 Api
API 详情fs.write(fd, buffer[, offset[, length[, position]]], callback)
fs.write(fd, string[, position[, encoding]], callback)
fs.writeSync(fd, buffer[, offset[, length[, position]]])
fs.writeSync(fd, string[, position[, encoding]])