通过谷歌地图查询返回的JSON包含编码的字符像\\ X26(如何解码?)(JSON returned

2019-08-17 18:24发布

在Java应用程序,我得到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");

没运气。 有任何想法吗?

Answer 1:

它得到的工作:

String json = "\\x3c/div\\x3e";        
json = URLDecoder.decode(json.replace("\\x", "%"), "UTF-8")
        .replace("\\=", "=")
        .replace("\\&", "=")
        .replace("\\?", "=");

都需要与谷歌地图查询JSON结果的结果出现其他问题的其他三个内容替换。



文章来源: JSON returned by Google Maps Query contains encoded characters like \\x26 (how to decode?)