Dll导出函数返回的utf8 string 解码问题,最后一个字符乱码
rStr = GetWordStr(); //rStr 收到的是 utf8 str 【什么】
mbyte = System.Text.Encoding.Default.GetBytes(rStr);
这是 mbyte 是 5 个字节
mbyte = System.Text.Encoding.Convert(System.Text.Encoding.UTF8,
System.Text.Encoding.Unicode, mbyte);
rStr = System.Text.Encoding.Unicode.GetString(mbyte);
最后 什么 编程了 什口 , 还有某些汉字 最后一个汉字乱码,某些汉字都正常 .
是不是 解码 有问题
------解决方案--------------------
rStr = GetWordStr(); //rStr 收到的是 utf8 str 【什么】
1:是不是UTF8编码完全取决于你这个GetWordStr的实现。
mbyte = System.Text.Encoding.Default.GetBytes(rStr);
这是 mbyte 是 5 个字节
mbyte = System.Text.Encoding.Convert(System.Text.Encoding.UTF8,
System.Text.Encoding.Unicode, mbyte);
rStr = System.Text.Encoding.Unicode.GetString(mbyte);
最后 什么 编程了 什口 , 还有某些汉字 最后一个汉字乱码,某些汉字都正常 .
是不是 解码 有问题
2:如果是乱码多半是编码格式有问题,你需要确定GetWordStr的实现。