NodeJS docs强调 binary
字符串编码是非常不鼓励的,因为它会在未来的某个时候被丢弃。
但是,我正在尝试使用 node-imagemagick
生成图像缩略图模块,只能输出binary
编码的字符串。
我的最终目标是将生成的缩略图作为 BLOB 提交到 SQLite3 数据库(我使用的是 node-sqlite3
),所以我认为我需要将缩略图作为二进制 Buffer 对象。
我如何直接将 node-imagemagick
的 binary
编码输出解码为原始二进制 Buffer(而不仅仅是包含 binary
的 Buffer > 编码字符串)?我不喜欢使用 base64
...
最佳答案
const buffer = new Buffer(binaryString, "binary");
测试:
$ node
> var binaryString = "\xff\xfa\xc3\x4e";
> var buffer = new Buffer(binaryString, "binary");
> console.log(buffer);
<Buffer ff fa c3 4e>
更新:从 v10.0.0 开始 - 使用 Buffer.from(string[, encoding])
代替。
关于node.js - 如何将 "binary"编码字符串解码为原始二进制缓冲区?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13823722/