UNPKG

t-comm

Version:

专业、稳定、纯粹的工具库

24 lines (22 loc) 748 B
// 更健壮的转换函数,支持多种编码 function ab2str(buffer, encoding) { if (encoding === void 0) { encoding = 'utf-8'; } if (typeof TextDecoder !== 'undefined') { return new TextDecoder(encoding).decode(new Uint8Array(buffer)); } // 备选方案 var byteArray = new Uint8Array(buffer); var result = ''; for (var i = 0; i < byteArray.length; i++) { result += String.fromCharCode(byteArray[i]); } // 如果是 GBK 编码,可能需要特殊处理 if (encoding.toLowerCase() === 'gbk' || encoding.toLowerCase() === 'gb2312') { // 这里可以集成第三方 GBK 解码库 console.warn('GBK编码可能需要特殊处理,建议服务器使用UTF-8'); } return result; } export { ab2str };