Java Google Maps查询返回的JSON包含编码字符,如\x26(如何解码?)
在Java应用程序中,我从Google Maps中获取JSON,其中包含Java Google Maps查询返回的JSON包含编码字符,如\x26(如何解码?),java,json,string,google-maps,utf-8,Java,Json,String,Google Maps,Utf 8,在Java应用程序中,我从Google Maps中获取JSON,其中包含\x26等字符,我希望将其转换为原始字符&。据我所知,这是一个UTF-8符号,但我不能完全确定。在源JSON中,可以出现各种编码字符(例如\x3c/div\x3e)。我怎样才能破译它们 我试过: String json = "\\x3c/div\\x3e"; byte [] b = json.getBytes("UTF-8"); json = new String(b,"UTF-8"); 不走运。有什么想法吗?成功了: S
\x26
等字符,我希望将其转换为原始字符&
。据我所知,这是一个UTF-8符号,但我不能完全确定。在源JSON中,可以出现各种编码字符(例如\x3c/div\x3e
)。我怎样才能破译它们
我试过:
String json = "\\x3c/div\\x3e";
byte [] b = json.getBytes("UTF-8");
json = new String(b,"UTF-8");
不走运。有什么想法吗?成功了:
String json = "\\x3c/div\\x3e";
json = URLDecoder.decode(json.replace("\\x", "%"), "UTF-8")
.replace("\\=", "=")
.replace("\\&", "=")
.replace("\\?", "=");
Google Maps查询JSON结果中出现的其他问题需要另外三个替换项。使其正常工作:
String json = "\\x3c/div\\x3e";
json = URLDecoder.decode(json.replace("\\x", "%"), "UTF-8")
.replace("\\=", "=")
.replace("\\&", "=")
.replace("\\?", "=");
Google Maps查询JSON结果中出现的其他问题需要另外三个替换