假设我的JSON数据中有任何特殊字符,则需要使用UTF-8进行编码。
示例JSON:
String msg = { \"name\": \"SÅi®äjesh\", \"location\":\"Öslö" };
我尝试了以下方案
byte[] utf8Bytes = msg.getBytes(StandardCharsets.UTF_8);
String newString = new String(utf8Bytes, StandardCharsets.UTF_8);
/ *显示?在我的控制台中标记符号* /
System.out.println(URLEncoder.encode( original,StandardCharsets.UTF_8.toString() ));
/ *编码包括{,“等符号在内的总字符串。* /
答案 0 :(得分:1)
Java字符串为UTF-16,您需要将其转换为字节数组,然后转换为utf8字符串。
import static java.nio.charset.StandardCharsets.*;
byte[] bytes = "YOUR JSON".getBytes(ISO_8859_1);
String jsonStr = new String(bytes, UTF_8);