Node(一)fs模块、events模块、 Buffer类使用、Stream的使用

目录

一. 服务器开发的流程

1.1. Node开发服务器

1.2. Node和浏览器区别

1.3. Node的架构设计

二. fs模块的使用

2.1. fs读取文件

(1)API网址:File system | Node.js v16.20.2 Documentation

(2)读文件的三种方式​编辑

(3)文件描述符

3.2. fs写入文件

(1)基本使用

(2)参数options的设置

flag:写入的方式。

encoding:字符的编码;​编辑

3.3. fs文件夹操作

(1)创建文件夹

(2)读取文件夹

(3)重命名

三. events模块

3.1. events基本使用

(1)基本使用

(2)取消事件

(3)传递参数

3.2. events其他方法

四. Buffer类使用

4.1. 二进制的知识

4.2. Buffer和字符串之间转换

4.3. Buffer的其他创建方式

4.4. Buffer源码创建过程

五. Stream的使用

5.1. Stream的概念理解​编辑​编辑

5.2. 可读流的使用Readable

5.3. 可写流的使用Writable

5.4. pipe可读可写流连接一起


一. 服务器开发的流程

1.1. Node开发服务器

1.2. Node和浏览器区别

1.3. Node的架构设计

二. fs模块的使用

2.1. fs读取文件

(1)API网址:File system | Node.js v16.20.2 Documentation
(2)读文件的三种方式
// commmonjs
const fs=require('fs')
// // 1.同步读取
 const res1=fs.readFileSync('./abc.txt',{
   encoding:'utf-8'
 })
 console.log(res1)
 console.log('后续的代码')
​
// 2.异步读取:回调函数
 const res2=fs.readFile('./abc.txt',{encoding:'utf-8'},(err,data)=>{
   if(err){
     console.log('文件读取错误'+err)
     return
   }else{
     console.log(data)
   }
 })
 console.log('后续代码')
​
// 3.异步读取 Promise
// 这里多个s promises
fs.promises.readFile('./abc.txt',{
  encoding:'utf-8'
}).then((res)=>{
  console.log(res)
}).catch((err)=>{
  console.log(err)
})
console.log('后续代码')
(3)文件描述符
// 打开一个文件 
// 打开之后调用回调函数 里面会传入文件描述符fd
fs.open('./abc.txt',(err,fd)=>{
  if(err) return 
  console.log(fd)
  // 用fd来获取文件信息
  fs.fstat(fd,(err,stats)=>{
    if(err) return 
    console.log(stats)
    // 手动打开文件也要手动关闭文件
    fs.close(fd)
  })
})

3.2. fs写入文件

(1)基本使用
const fs=require('fs')
​
const content='nihao woshiGGbond'
​
fs.writeFile('./ccc.txt',content,{
  encoding:'utf-8'
},(err)=>{
  if(err){
    console.log(err)
  }else{
    console.log('写入成功')
  }
})
​
// 第三个参数还可以进行配置flag
fs.writeFile('./ccc.txt',content,{
  encoding:'utf-8',
  flag:'a'
},(err)=>{
  if(err) return
  console.log('追加成功')
})
(2)参数options的设置
flag:写入的方式。

encoding:字符的编码;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值