我使用下面的代码发布一些数据,但我发现在某些服务器中,响应字符串是乱码(并非所有服务器)。
Convert to Java
我尝试了很多方法,但都没有效果。
答案 0 :(得分:0)
请勿使用String#getBytes()
它会使用平台的默认字符集对您的String
进行解码,这意味着平台依赖< / strong>即可。此外,由于您已使用String
作为字符集将流内容解码为UTF-8
,因此它甚至无用。
请改为尝试:
try (BufferedReader reader = new BufferedReader(
new InputStreamReader(connection.getInputStream(), String_UTF_8))
) {
String lines;
while ((lines = reader.readLine()) != null) {
sb.append(lines);
}
}