Nodejs:文件系统(fs)/ 模块——文件读取、文件写入

在Nodejs中可以通过内置的fs模块(功能)来操作系统文件。fs->filesystem

文件系统中有两种编程方式:同步(以Sync结尾)、回调

用到fs模块先引入,const fs = require(‘fs’);(const用来声明一个不能修改的只读常量。和let类似)

一、文件读取:

1.同步:readFileSync(path[,options]);     [ ]内的值可以省略

              path:文件路径

              options:①省略:以流的形式(十六进制)返回读取到的内容。

                              ②不省略:{"encoding":'utf-8'} | 'utf-8'   返回字符串。

(引入fs模块后先在同级目录下创建一个名为:文件读取的.txt文件,文件内输入测试二字)

①省略options:

let res = fs.readFileSync('文件读取.txt');
console.log(res);

(必须在文件自身所在位置的地址栏进行cmd操作) 

 

 

Buffer->流 (16进制:0-9 a-f)可以用toString()将16进制转为字符串变为了具体的内容。

let res = fs.readFileSync('文件读取.txt');
console.log(res.toString());

 

② 不省略options:

let res = fs.readFileSync('文件读取.txt', 'utf-8');
console.log(res);

 执行js文件:用文件读取(同步)获得‘文件读取.txt’中的内容:测试

 2.回调:fs.readFile(pasth[,options],callback);

               callback:箭头函数  (err,result)=>{...}

                               err:保存错误信息,没有返回null。result:保存结果。

let ult = fs.readFile('文件读取.txt', 'utf-8', (err, result) => { console.log(err, result); });
console.log(ult);

 执行js文件:用文件读取(回调)获得‘文件读取.txt’中的内容:测试

 二、文件写入(只写同步):fs.writeFileSync(path,data[,options]);

path:路径

data:数据(内容)

[,options]:写入模式,不传递参数默认值w(写入,覆盖原来的内容), 传递可以自己定义模式(a-> z追加)  {'flag':'w|a|...'}

①不写options,默认传递w,覆盖原来的内容

(先在同级目录下创建一个名为:文件写入的.txt文件,文件内输入测试二字)

fs.writeFileSync('文件写入.txt','文件写入')

执行结果没有任何返回值,但是不报错,就是执行成功了 

文件写入.txt文件页面成果:原本的测试两个字被新加入的'文件写入'替换了。

 ②写options,在原内容的基础上追加内容    (\n是换行)

fs.writeFileSync('文件写入.txt', '\n文件写入', { flag: 'a' })

执行结果: 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值