关于node.js:将Binary.toString(’encode64’)转换回Binary

Convert Binary.toString('encode64') back to Binary

我看过几个教程解释如何将二进制图像转换为encode64表示:

1
var image = new Buffer(bl.toString(), 'binary').toString('base64');

我的问题是,如何返回这个字符串表示,回到缓冲区的二进制数据。


这个问题有一些有用的信息:如何在node.js中进行base64编码?

缓冲区类本身执行转换:

1
2
3
4
5
6
7
8
9
10
11
12
var base64data = Buffer.from('some binary data', 'binary').toString('base64');

console.log(base64data);
// ->  'c29tZSBiaW5hcnkgZGF0YQ=='

var originaldata = Buffer.from(base64data, 'base64');

console.log(originaldata);
// ->  <Buffer 73 6f 6d 65 20 62 69 6e 61 72 79 20 64 61 74 61>

console.log(originaldata.toString());
// ->  some binary data


不推荐使用new Buffer

从二进制到base64:

1
2
3
const base64data = Buffer.from('some binary data', 'binary').toString('base64');
console.log(base64data);
// ->  'c29tZSBiaW5hcnkgZGF0YQ=='

从base64到binary:

1
2
3
4
5
 const origionalData = Buffer.from('some base64 data', 'base64')

console.log(origionalData)

// ->  'c29tZSBiaW5hcnkgZGF0YQ=='