Buffer

一,认识Buffer

1. buffer原理

  • 我们可以将Buffer看成是一个存储二进制的数组
  • 这个数组中的每一项,可以保存8位二进制: 00000000
  • 理解:字节数组

2. buffer和字符串

1
2
3
4
const msg = "love you"
const buffer = new Buffer.from(msg)
console.log(buffer);
console.log(buffer.toString());

image-20210923183711425

3. 其他创建方式

1
2
3
4
5
const buffer = new Buffer.alloc(8)
console.log(buffer);
buffer[0] = 12
buffer[1] = 0x12
console.log(buffer);

image-20210923190319950

4. buffer和文件读取

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
const fs = require('fs')
const sharp = require('sharp')
// 1. 读取文本文件
fs.readFile('./a.txt', (err, data) => {
console.log(data);
console.log(data.toString());
})

// 2. 读取图片文件
fs.readFile('./芽衣.jpg', (err, data) => {
console.log(data);
fs.writeFile('./copyYaYi.jpg', data, err => {
// 复制了
console.log(err);
})
})

// 3. sharp库的使用
sharp('./芽衣.jpg') // 把图片转成buffer进行处理
.resize(400, 300)
.rotate(90)
.toFile('./createPic.jpg')

二,Buffer的创建过程

源码,后期学习。。。