uint8ArrayToString(fileData) {
var dataString = “”;
for (var i = 0; i < fileData.length; i++) {
dataString += String.fromCharCode(fileData[i]);
}
return dataString
}
如果你要转换的是纯英文的可以选择上面的同时如果解析得到的结果是json字符串还会出现一些特殊符号例如 \\可以使用正则干掉它们最后得到字符串你发现还是无法解析 可以使用replaceAll() 也可以用正则
you happy 就OK
str.replace(new RegExp(’"{’, ‘gm’), “{”).replace(new RegExp(’}"’, ‘gm’), “}”)
我这里是干掉全部 { 前面 和 }后面的双引号
str.replace(/\/g,’’).trim();
这个是干掉出现的特殊字符
但是如果你要转换的原始文本中包含有中文的情况下 使用上面的方法最后解析出来是会存在乱码的
如果是用下面这个呢就不会存在乱码 还有坑那你就自己填吧 good lucky
Utf8ArrayToStr:function(array) {
var out, i, len, c;
var char2, char3;
out = "";
len = array.length;
i = 0;
while(i <len) {
c = array[i++];
switch (c >> 4) {
case 0: case 1: case 2: case 3: case 4: case 5: case 6: case 7:
// 0xxxxxxx
out += String.fromCharCode(c);
break;
case 12: case 13:
// 110x xxxx 10xx xxxx
char2 = array[i++];
out += String.fromCharCode(((c & 0x1F) << 6) | (char2 & 0x3F));
break;
case 14:
// 1110 xxxx 10xx xxxx 10xx xxxx
char2 = array[i++];
char3 = array[i++];
out += String.fromCharCode(((c & 0x0F) << 12) |
((char2 & 0x3F) << 6) |
((char3 & 0x3F) << 0));
break;
}
}
return out;
},