10.2 Node.js --3(文件系统fs)

返回目录
上一篇

1. 简介

  • 文件系统fs(file system),是所有后端都拥有内置模块。
  • fs 是 NodeJS 中的内置模块,可以对计算机中的文件进行增删改查等操作。

2. 同步和异步

  • 所有的方法都是有同步和异步的形式。
  • 异步的方法最后一个参数都是一个回调函数。传给回调函数的参数取决于具体方法,但是回调函数的第一个参数都会被保留给异步。如果操作成功,则第一个参数回事null或者undefined

3. 文件写入

3.1 简单写入

  • fs.writeFile( file , data , [,options] , callback); (异步API)

一共四个参数,必须写的参数: file data callback
file :当前文件的地址(./ 代表当前文件夹)
data :写入的数据内容
callback:当前的回调函数

  • fs.writeFileSync( file , data ); (同步API)
  • options 选项
    encoding 默认值: 'utf8'
    mode默认值: 0o666
    flag 默认值: 'w'

mode 的说明
0o666 文件的权限

  • 6 所有者的权限
  • 6 所属组的权限
  • 6 其他人的权限

  • 4 可读

  • 2 可写

  • 1 可执行

  • 777 文件的文件的最高权限
    计算方式:
    4+2=6 所有者的权限
    4+2+1=7 文件的文件的最高权限


flag的说明:

  • a append 追加 - - {flag:‘w’}
  • w write 写入(会发生覆盖)- - {flag:‘w’}
  • r read 只读 - -{flag:‘w’}

注意

  • 尽量不要在 C盘 执行文件写入动作 (有的计算机不支持向C盘中写入文件)
  • 如果当文件不存在,写入文件的时候,会自动给我们创建文件
  • 如果当文件夹不存在,写入文件的时候,会报错

3.2 流式写入

fs.createWriteStream* path

  • options

    • flags 默认值: 'w'
    • encoding默认值: 'utf8'
    • mode 默认值: 0o666
  • 事件监听 open close eg: ws.on(‘open’, function(){});

    (path[, options])

//1.引入 fs 模块
let fs = require('fs');

//2.写入流的方法 参数:文件写入路径
let ws = fs.createWriteStream('./index.html');

//3.写入信息
ws.write('白日依山尽,');
ws.write('黄河入海流。');
ws.write('欲穷千里目,');
ws.write('更上一层楼。');

//4.写入关闭
ws.close();

//白日依山尽,黄河入海流。欲穷千里目,更上一层楼。

3.3 写入文件两种方式对比

  • writeFile 简单写入 应对简单的内容写入, 次数较少

  • createWriteStream 应对批量内容写入

3.4 写入文件的场景

  • 下载文件
  • 安装文件
  • 日志(如:Git)
  • 数据库
  • 网盘
  • 编辑器保存文件
  • 视频录制

4. 文件读取

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值