Node.js之Buffer

编码的发展

一个字节由8个位组成,gbk中一个汉字2个字节,utf8中一个汉字3个字节

  • ASCII编码
  • GB2312
  • GBK
  • GB18030
  • Unicode
  • UTF-8

Node中不支持GBK编码,我们需要将GBK转为UTF8编码

var iconv = require('iconv-lite');
function readGBKText(pathname) {
   
    var bin = fs.readFileSync(pathname);
    return iconv.decode(bin, 'gbk');
}

进制转化

//把任意进制转成十进制
console.log(parseInt('20',10));//20
console.log(parseInt('11',2));//3
console.log(parseInt('20',16));//32
//把十进制转成任意进制
console.log((3).toString(2));//11
console.log(3..toString(2));//11
console.log((77).toString(8));//115 
console.log((77).toString(16));//4d 
console.log((17).toString(8));//21

Buffer的应用

定义buffer的三种方式

let buf1 = Buffer.alloc(6);
let buf2 = Buffer.from('珠峰');
let buf3 = Buffer.from([65,66,67]);

buffer中常用的方法

  • buff.toString()
  • buff.fill()
  • buff.slice()
  • buff.copy
  • Buffer.concat()
  • Buffer.isBuffer()
  • indexOf

copy方法的实现

Buffer
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值