Nodejs篇二 - fs文件写入

文件写入操作

1. 引入fs内置模块

const fs = require('fs');

2. 调用writeFile()方法

接收四个参数

  • 第一个参数, file: 要写入的文件名或文件路径
  • 第二个参数, data: 写入的数据内容
  • 第三个参数, options: 数据配置,有三个选项, 非必需
    1. encoding 默认值: 'utf8'
    2. mode 默认值: 0o666
    3. flag 默认值: 'w'
  • 第四个参数, callback 回调函数, 接收一个参数
    1. err 文件写入失败的错误信息
const data = '测试一下写入功能';

fs.writeFile('./test.txt', data, err => {
  if(err) throw err;
  console.log('写入成功');
})

或者

const data = '测试一下写入功能';

fs.writeFile('./test.txt', data, {encoding: 'utf8', flag: 'a'}, err => {
  if(err) throw err;
  console.log('写入成功');
})

或者

fs.writeFile('./test.txt', '你好,Nodejs', 'utf8', err => {});

注意点:

  1. 当data是一个buffer类型数据时, 则encoding选项会被忽略
  2. 上面代码块中第三个参数可以不写,默认字符编码是uft8, flag是‘w'
  3. 如果 options 是一个字符串,则它指定字符编码

知识点延伸

  • fs.writeFile(path, data, {flag:'a', callback) 当flag值为a时,是往文件中追加的方式写入,相当于fs.appendFile的功能
  • fs.appendFile() 异步的将数据追加到文件中
  • fs.appendFileSync() 同步的将数据追加到文件中
  • fs.stat() 异步检查文件是否存在
  • fs.statSync() 同步检查文件是否存在