今天接口测试搞定一个中文乱码问题,赶紧记一下~
问题出在writeBytes(String s)这个方法上。
JAVA中的char是16位的,一个char存储一个中文字符,直接用writeBytes方法转换会变为8位,直接导致高8位丢失。从而导致中文乱码。
解决方法:
现转换为字节组,再write写入流。方法如下:
原方法:
out.writeBytes(json.toString());
新方法:
out.write(json.toString.getBytes());
今天接口测试搞定一个中文乱码问题,赶紧记一下~
问题出在writeBytes(String s)这个方法上。
JAVA中的char是16位的,一个char存储一个中文字符,直接用writeBytes方法转换会变为8位,直接导致高8位丢失。从而导致中文乱码。
解决方法:
现转换为字节组,再write写入流。方法如下:
原方法:
out.writeBytes(json.toString());
新方法:
out.write(json.toString.getBytes());