C#用ThoughtWorks.QRCode.dll不能解析全是中文的
只能解析开头为字母或符号的二维码 --------------------编程问答-------------------- 在QRCodeUtility文件当中IsUnicode当中 判断是ascii还是unicode,有的时候判断不出来。public static bool IsUnicode(byte[] byteData){
//string value1 = FromASCIIByteArray(byteData);
//string value2 = FromUnicodeByteArray(byteData);
//byte[] ascii = AsciiStringToByteArray(value1);
//byte[] unicode = UnicodeStringToByteArray(value2);
//if (ascii[0] != unicode[0])
// return true;
//return false;
bool isUnicode = false;
foreach (byte value in byteData)
{
if (value > 128)
{
isUnicode = true;
break;
}
}
return isUnicode;//返回是不是Unicode编码
}
因为ascii编码当中的最大为127,这样判断后,就能正确的判断是不是unicode,这样就能正确的解码中文了 --------------------编程问答-------------------- 这是因为编码的时候没注意格式,所以解码的时候根据编码的格式去解码,所以解码中文有问题。
说白了就是编码已经出错了,解码不错才怪了
补充:.NET技术 , C#