node:文件写入数据(readFile、writeFile),覆盖与增量两种模式

介绍

  1. 使用 node 的 fs 模块中异步 writeFile方法;或者同步 writeFileSync方法;
  2. 写入文件(异步的fs.writeFile和同步的fs.writeFileSync)
    fs.writeFile(file, data[, options], callback)
    
    file - 文件名或文件描述符。
    data - 要写入文件的数据,可以是 String(字符串) 或 Buffer(缓冲) 对象。
    options - 该参数是一个对象,包含 {encoding, mode, flag}。默认编码为 utf8, 模式为 0666 , flag 为 ‘w’
    callback - 回调函数,回调函数只包含错误信息参数(err),在写入失败时返回。
  3. 读取文件(异步的 fs.readFile() 和同步的 fs.readFileSync())
    fs.readFile(filename[, options], callback)
    

使用(以异步举例,同步则是以一个变量接收且无回调函数)

  1. 覆盖写入;(执行一次函数则文件内容置空,然后再写入)

    const fs = require('fs');
    const data = {
    	name: 'zs'
    };
    const wirte = (data) => {
    	return data
    };
    fs.writeFile("./end.js", `const a = ${JSON.stringify(wirte (data))}`, err => {
      if (err) console.log('文件写入失败!' + err.message)
      console.log(`文件写入成功!:${__dirname}\\end.js`)
    })
    

    在这里插入图片描述
    在这里插入图片描述

  2. 增量模式写入(保留之前的数据继续写入)
    增量模式需要使用到fs的读取文件(fs.readFile);读取完毕后再次拼接写入;

    const fs = require('fs');
    const data = {
    	name: 'zs'
    };
    const  wirte = (data) => {
    	return data
    }
    fs.readFile('./end.js', 'utf8', function(err, info) {
      if (err) console.log('文件读取失败!' + err.message)
      console.log(`文件读取成功!`,info)
      fs.writeFile("./end.js", `${info};const time${new Date().getTime()} = ${JSON.stringify(wirte(data))}`, err => {
        if (err) console.log('文件写入失败!' + err.message)
        console.log(`文件写入成功!${__dirname}\\end.js`)
      })
    });
    

参考资料

  1. 菜鸟教程(node中文版官网需要VIP-199RMB,贫穷的我选择放弃)
  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值