Node学习笔记(六)—— 文件读取、写入、删除

文件读取
  1. 导入文件模块
    // 导入文件模块,node自带的模块
    let fs=require('fs')
    
  2. 同步读取
    // Node默认是异步
    // 同步读取文件,会阻塞和等等
    let content =fs.readFileSync('./fs/01.txt',{flag:'r',encoding:'utf-8'})
    console.log(content) // 01txt中的内容是01txt
    
  3. 异步读取
    fs.readFile('./fs/01.txt',{flag:'r',encoding:'utf-8'},(err,data)=>{
        if(err){
            console.log(err) // 后打印
        }else{
            console.log(data) // 后打印 ‘01txt你好’
        }
    })
    console.log(123) // 先打印
    
    // 封装读取文件的函数
    function fsRead(path){
        return new Promise(function(resolve,reject){
            fs.readFile(path,{flag:'r',encoding:'utf-8'},(err,data)=>{
                if(err){
                    reject(err)
                }else{
                    resolve(data)
                }  
            })
        })
    }
    fsRead('./fs/01.txt').then(res=>{
        console.log(res) // 后打印 ‘01txt你好’
    })
    console.log(123) // 先打印
    
文件写入
  1. 异步写入

    // 将01.txt文件中的内容替换为'世界美好',覆盖原来的内容,如果文件路径错误,会自动生成文件
    fs.writeFile('./fs//01.txt','世界美好',{flag:'w',encoding:'utf-8'},function(err){
        if(err){
            console.log(err)
        }else{
            console.log('写入成功') 
        }
    })
    
    // 将01.txt文件中的内容追加'--世界美好'
    fs.writeFile('./fs//01.txt','--非常好',{flag:'a',encoding:'utf-8'},function(err){
        if(err){
            console.log(err)
        }else{
            console.log('写入成功') 
        }
    })
    
    function fsWrite(path, content) {
        return new Promise(function (resolve, reject) {
            fs.writeFile(path, content, {
                flag: 'a',
                encoding: 'utf-8'
            }, function (err) {
                if (err) {
                    reject(err)
                } else {
                    resolve(err)
                }
            })
        })
    }
    fsWrite("./fs/01.txt","-1")  // 先追加
    fsWrite("./fs/01.txt","-2") // 后追加
    
文件删除
  1. 异步删除文件
    // 删除fs文件下02.txt文件
    fs.unlink('./fs/02.txt',function(err,data){
    	if(err){
    		console.log(err)
    	 }else{
    	    console.log(data)
    	 }
    })
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值