nodejs中的buffer
阿新 • • 發佈:2020-11-13
Buffer
是Nodejs提供的可以直接操作二進位制資料的類
1.string to buffer
var buffer = Buffer.from("hello,world"); console.log(buffer);
<Buffer 68 65 6c 6c 6f 2c 77 6f 72 6c 64>
2.bufferto string
var buffer = Buffer.from("hello,world"); var ss = buffer.toString('utf8'); console.log(ss);
hello,world
3.buffer to base64
var buffer = Buffer.from("hello,world"); var base64 = buffer.toString('base64'); console.log(base64);
aGVsbG8sd29ybGQ=
4.長度獲取
var buffer = Buffer.from(('hello,world.')); console.log(buffer.length);
12
5.多個buffer的合併
var buffer1 = Buffer.from(('hello,world.')); var buffer2 = Buffer.from(('你好啊!'));var buffer3 = Buffer.concat([buffer1, buffer2]); console.log("buffer3內容: " + buffer3.toString());
buffer3內容: hello,world.你好啊!
6.將 Buffer 例項轉換為 JSON 物件
var buffer = Buffer.from(("hello,world")); console.log(buffer.toJSON());
{
type: 'Buffer',
data: [
104, 101, 108, 108,
111, 44, 119, 111,
114, 108, 100
]
}
7.分割
var buffer = Buffer.from(("hello,world")); console.log(buffer.slice(1,6).toString());
ello,
8.比較
返回一個數字,表示buf在otherBuffer之前,之後或相同
var buffer1 = Buffer.from('hello'); var buffer2 = Buffer.from('he'); var result = buffer1.compare(buffer2); if (result < 0) { console.log(buffer1 + " 在 " + buffer2 + "之前"); } else if (result == 0) { console.log(buffer1 + " 與 " + buffer2 + "相同"); } else { console.log(buffer1 + " 在 " + buffer2 + "之後"); }
hello 在 he之後