node.js笔记(2)

fs模块是node.js官方提供的,用来操作文件的模块,提供了一系列的方法和属性,用来满足用户对文件的操作需求。

在使用之前,需要导入,使用require方法来导入

cpp 复制代码
const fs = require('fs')

读取指定文件的内容

fs.readFile(path,[options],callback)

其中,path代表文件路径,

options是可选参数,表示以什么编码格式来读取文件。

callback,文件读取完成后,通过回调函数拿到读取结果。

以utf8的编码格式,读取指定文件的内容,并打印err和dataStr内容

javascript 复制代码
const fs=require('fs')
fs.readFile('./files/11.txt','utf8',function(err,dataStr){
    console.log(err)
    console.log('-----')
    console.log(dataStr)
})

如果读取成功,则err的值为null。如果读取失败,则err的值为错误对象,dataStr的值为undefined。

判断文件是否读取成功

javascript 复制代码
const fs=require('fs')
fs.readFile('./files/1.txt','utf8',function(err,result){
    if(err){
        return console.log('文件读取失败'+err.message)
    }
    console.log('文件读取成功,内容是'+result)
})

fs.writeFile(file,data,[options],callback)

file,文件路径的字符串,表示文件的存放路径

data,表示要写入的内容

options,表示以什么格式写入文件。可选参数

callback,文件写入完成后的回调函数

javascript 复制代码
const fs=require('fs')
fs.writeFile('./files/2.txt','hello node.js',function(err){
    console.log(err)
})

如果文件写入成功,则err的值为null。

如果文件写入失败,则err为错误对象。

判断是否写入成功

javascript 复制代码
const fs=require('fs')
fs.writeFile('./files/2.txt','hello node.js',function(err){
    if(err){
        return console.log('文件写入失败,'+err.message)
    }
    console.log('文件写入成功')
})
javascript 复制代码
const fs=require('fs')
fs.readFile('./成绩.txt','utf8',function(err,dataStr){
    if(err){
        return console.log('读取失败'+err.message)
    }
    //console.log('读取成功'+dataStr)
   //先把成绩按照空格,打印出来
    const arrold=dataStr.split(' ')
    //console.log(arrold)
    //循环分割后的数组
    const arrNew=[]
    arrold.forEach(item =>{
        arrNew.push(item.replace('=',':'))
    })
    console.log(arrNew)
    //把新数组中的每一项,进行合并,得到一个新的字符串
    const newStr=arrNew.join('\r\n')
    console.log(newStr)
    //调用写方法,写入
    fs.writeFile('./files/1.txt',newStr,function(err){
        if(err){
            return console.log('文件写入失败,'+err.message)
        }
        console.log('文件写入成功')
    })
})
相关推荐
饕餮争锋1 小时前
设计模式笔记_创建型_建造者模式
笔记·设计模式·建造者模式
萝卜青今天也要开心1 小时前
2025年上半年软件设计师考后分享
笔记·学习
吃货界的硬件攻城狮2 小时前
【STM32 学习笔记】SPI通信协议
笔记·stm32·学习
蓝染yy2 小时前
Apache
笔记
lxiaoj1113 小时前
Python文件操作笔记
笔记·python
半导体守望者4 小时前
ADVANTEST R4131 SPECTRUM ANALYZER 光谱分析仪
经验分享·笔记·功能测试·自动化·制造
啊我不会诶5 小时前
倍增法和ST算法 个人学习笔记&代码
笔记·学习·算法
逼子格5 小时前
振荡电路Multisim电路仿真实验汇总——硬件工程师笔记
笔记·嵌入式硬件·硬件工程·硬件工程师·硬件工程师真题·multisim电路仿真·震荡电流
一条破秋裤5 小时前
一份多光谱数据分析
笔记·数据挖掘·数据分析
zstar-_6 小时前
【算法笔记】6.LeetCode-Hot100-链表专项
笔记·算法·leetcode