nodejs base64转换问题。
发布于 11 年前 作者 beiyio 20754 次浏览 最后一次编辑是 8 年前

想把一张图片存到mongo里去,网上找的资料说是先将base64转换成二进制在保存。

t_base 是客户端吧图片变成base64的数据发送来的。

var binaryData=new Buffer(t_base,‘base64’).toString(‘binary’);

不知道这样写是否能将t_base 变成二进制…打印binaryData全是乱码。。。。

有高人给指点下吗

6 回复

binary 格式不再支持了。

‘binary’ - A way of encoding raw binary data into strings by using only the first 8 bits of each character. This encoding method is deprecated and should be avoided in favor of Buffer objects where possible. This encoding will be removed in future versions of Node.

图片不大的话,可直接 base64 存。

var binaryData=new Buffer(t_base,‘base64’); 就是二进制编码了

var base64Data = data.replace(/^data:image/png;base64,/,""); //务必删除mine信息才能转化 require(“fs”).writeFile(“o.png”, base64Data, ‘base64’, function(err) { console.log(err); });

如果你需要ascii打印,可以用这种方法 console.log(new Buffer(“SGVsbG8gV29ybGQ=”, ‘base64’).toString(‘ascii’))

回到顶部