项目中经常会用到页面显示图片的功能,比如前端接收后台传输的数据是 byte[] 类型的数据,这时我们可以转成 Base64编码的图片再进行显示。
byte[] 转 Base64 编码
private arrayBufferToBase64(buffer) {
let binary = "";
const bytes = new Uint8Array(buffer);
const len = bytes.byteLength;
for (let i = 0; i < len; i++) {
binary += String.fromCharCode(bytes[i]);
}
//window.btoa():将ascii字符串或二进制数据转换成一个base64编码过的字符串,该方法不能直接作用于Unicode字符串.
return window.btoa(binary);
}
private getImage() {
const image = [-199,80...50];//从后台接收的 byte[] 类型的图片
let imageBase64;
imageBase64 = arrayBufferToBase64(image);
//把Data URI scheme的图片类型和图片拼接起来
imageBase64 = "data:image/png;base64," + imageBase64;
}