一个JAVA程序中的中文字符串,写入opc server之后,显示为乱码。
中文字符串是:黄金叶(硬帝豪)烟丝。 (这里的编码是UTF-8)
乱码是:»ƽðҶ(ӲµۺÀ)Ñ (这个编码未知)
请问怎么获取乱码是什么编码,怎么把乱码转换为中文?
new String(str.getBytes("ISO-8859-1"), "utf-8")
用上面的方式试了常用的编码方式,但是都不行。。。
求大神解救。
如果你没法确定opc server使用什么编码,甚至它怎么处理的字符串都不确定的话,最好的做法是对你的原始字符串做一个编码,比如base64,这样所有的文本都使用64个任何编码系统都认识的字符(52个大小写英文+10个数字+2个符号),你的两边的程序编码和解码。
utf8编码就是字节组。一样库存人。只不过数据库中字段设置为varchar类型等。数据库直接查看不了。你取出数据后再按utf8处理就可以了
这个只能靠猜测,然后和正确的编码比对。