• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

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

武飞扬头像
三月.'
帮助1

在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:

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

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

学新通

学新通 

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

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

 学新通

② 不省略options:

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

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

学新通

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

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

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

  1.  
    let ult = fs.readFile('文件读取.txt', 'utf-8', (err, result) => { console.log(err, result); });
  2.  
    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' })

学新通

执行结果: 

学新通

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhghbkca
系列文章
更多 icon
同类精品
更多 icon
继续加载