nodejs-用二进制-v1.0.0
程序员文章站
2024-03-17 13:25:40
...
模块概览
Buffer是node的核心模块,开发者可以利用它来处理二进制数据,比如文件流的读写、网络请求数据的处理等。
简单示例
//创建
const buf = new Buffer([0x62, 0x75, 0x66, 0x66, 0x65, 0x72]);
//比较
// 例子一:编码一样,内容相同
var buf1 = Buffer.from('A');
var buf2 = Buffer.from('A');
console.log( buf1.equals(buf2) ); // true
// 例子二:编码一样,内容不同
var buf3 = Buffer.from('A');
var buf4 = Buffer.from('B');
console.log( buf3.equals(buf4) ); // false
// 例子三:编码不一样,内容相同
var buf5 = Buffer.from('ABC'); // <Buffer 41 42 43>
var buf6 = Buffer.from('414243', 'hex');
console.log(buf5.equals(buf6));
//连接
//拷贝
buf.copy(target[, targetStart[, sourceStart[, sourceEnd]]])
//查找
buf.indexOf(value[, byteOffset][, encoding])
//写入:buf.write(string[, offset[, length]][, encoding])
var buff = Buffer.alloc(20).fill('a');
console.log(buff.toString()); // aaaaaaaaaaaaaaaaaaaa
//转换
转成字符: buf.toString([encoding[, start[, end]]])
var buff = Buffer.from('hello');
console.log( buff.toString() ); // hello
console.log( buff.toString('utf8', 0, 2) ); // he
转成对象:buf.toJSON()
var buff = Buffer.from('hello');
console.log( buff.toJSON() ); // { type: 'Buffer', data: [ 104, 101, 108, 108, 111 ] }
//遍历:buf.values()、buf.keys()、buf.entries()
var buff = Buffer.from('abcde');
for(const key of buff.keys()){
console.log('key is %d', key);
}
// key is 0
// key is 1
// key is 2
// key is 3
// key is 4
for(const value of buff.values()){
console.log('value is %d', value);
}
// value is 97
// value is 98
// value is 99
// value is 100
// value is 101
for(const pair of buff.entries()){
console.log('buff[%d] === %d', pair[0], pair[1]);
}
// buff[0] === 97
// buff[1] === 98
// buff[2] === 99
// buff[3] === 100
// buff[4] === 101
//截取:buf.slice([start[, end]])
var buff1 = Buffer.from('abcde');
console.log(buff1); // <Buffer 61 62 63 64 65>
var buff2 = buff1.slice();
console.log(buff2); // <Buffer 61 62 63 64 65>
var buff3 = buff1.slice(1, 3);
console.log(buff3); // <Buffer 62 63>
buff3[0] = 97; // parseInt(61, 16) ==> 97
console.log(buff1); // <Buffer 62 63>
上一篇: css3 h5新增内容
下一篇: 编程挑战-进制转换
推荐阅读
-
nodejs-用二进制-v1.0.0
-
输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
-
剑指offer:输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
-
[算法]输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示
-
剑指offer:输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
-
输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
-
【输入一个整数,输出该数二进制表示中1的个数,其中负数用补码表示---------【剑指offer】】
-
第十二题:输入一个整数,输出该数二进制表示中1的个数,其中负数用补码表示。
-
输入一个整数,输出该数二进制表示中1的个数(其中负数用补码表示)-- 剑指offer
-
Java 实现输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示