Flutter 中文乱码相关
2019-06-10 本文已影响353人
独孤流
base64乱码
将base64过的字符串还原成原始文本,String.fromCharCodes
会乱码,convert.utf8.decode
才不会乱码
/*
* Base64解密
*/
static String base64Decode(String data){
List<int> bytes = convert.base64Decode(data);
// 网上找的很多都是String.fromCharCodes,这个中文会乱码
//String txt1 = String.fromCharCodes(bytes);
String result = convert.utf8.decode(bytes);
return result;
}
Uint8Buffer转成中文乱码问题,StringBuffer
会乱码,Utf8Decoder().convert
不会乱码
import 'dart:convert';
static String bytesToStringAsString(typed.Uint8Buffer message) {
// 这个会乱码
//final StringBuffer sb = StringBuffer();
// message.forEach(sb.writeCharCode);
// return sb.toString();
// 不会乱码
String messageTxt = Utf8Decoder().convert(message);
return messageTxt;
}