zoukankan      html  css  js  c++  java
  • nodejs中文件读取写入两种方法封装

    方法一:利用回调函数

    const fs = require('fs')
    const path = require('path')
    
    const fileHelper = {
        readFile:(path,cb)=>{
            fs.readFile(path,{encoding:'utf8'},(err,data)=>{
                if(!err){
                    cb(data)
                }
            })
        },
        writeFile:(path,content,cb)=>{
            fs.writeFile(path,content,{encoding:'utf8'},(err)=>{
                if(!err){
                    cb();
                }
            })
        }
    }
    
    const testPath = path.join(__dirname,'SubscribeMsg.js')
    fileHelper.readFile(testPath,(data)=>{
        console.log(data)
    })
    
    const testwrite = path.join(__dirname,'hello.json')
    fileHelper.writeFile(testwrite,'{ok:ok}',()=>{
        console.log('写入成功')
    })
    

    注意:当嵌套过深的时候,十分不方便,可以用Promise改造const fs = require('fs').promises可以用一个支持Promises的fs对象

    使用Promise进行文件读取写入操作

    const fs = require('fs').promises
    const path = require('path')
    
    const fileHelper = {
        readFile:(path)=>{
            return fs.readFile(path,{encoding:'utf8'})
        },
        writeFile:(path,content)=>{
            return fs.writeFile(path,content,{encoding:'utf8'})
        }
    }
    
    
    const testPath = path.join(__dirname,'SubscribeMsg.js')
    fileHelper.readFile(testPath).then((data)=>{
        console.log(data)
    })
    const testwrite = path.join(__dirname,'hello.json')
    fileHelper.writeFile(testwrite,'{ok:ok}').then(()=>{
        console.log('ok')
    })
    
  • 相关阅读:
    win平台搭建Lnmp环境
    YII2 model where 条件拼接
    yii2框架-yii2局部关闭(开启)csrf的验证
    Yii2 控制器单独向view(layout)传值
    Yii2 数据库基本操作
    PHP 多线程采集
    php 阿拉伯数字转中文
    javascript里的sleep()方法
    PHP数组内容不重复组合排列算法
    git使用经验(一)
  • 原文地址:https://www.cnblogs.com/smileyqp/p/12675224.html
Copyright © 2011-2022 走看看