【问题标题】:JSON returned by Google Maps Query contains encoded characters like \x26 (how to decode?)Google Maps Query 返回的 JSON 包含像 \x26 这样的编码字符(如何解码?)
【发布时间】:2013-03-09 05:45:42
【问题描述】:

在 Java 应用程序中,我得到带有 \x26 等字符的 JSON(来自 Google Maps),我想将其转换为其原始字符 &。据我所知,这是一个 UTF-8 符号,但我不完全确定。在源 JSON 中可以出现各种编码字符(例如\x3c/div\x3e)。我怎样才能解码它们?

我试过了:

String json = "\\x3c/div\\x3e";
byte [] b = json.getBytes("UTF-8");
json = new String(b,"UTF-8");

运气不好。有什么想法吗?

【问题讨论】:

    标签: java json string google-maps utf-8


    【解决方案1】:

    让它工作:

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

    Google Maps Query JSON Result 的结果出现的其他问题需要另外三个替换。

    【讨论】:

      猜你喜欢
      • 2013-06-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-03
      • 1970-01-01
      • 2016-06-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多