java - Google map 查询返回的 JSON 包含像\x26 这样的编码字符(如何解码?)

标签 java json string google-maps utf-8

在 Java 应用程序中,我获取 JSON(来自 Google map ),其中包含 \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 map 查询 JSON 结果出现的其他问题所需要的。

关于java - Google map 查询返回的 JSON 包含像\x26 这样的编码字符(如何解码?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15518340/

相关文章:

javascript - jquery/javascript 中的字符串验证为 MM :ss not HH:MM:ss

java - 将一串数字插入矩阵中

java - 将真正特定的方法放入 DAO 类中是否正确?

php json_encode 改变了 php 5.4 中的行为

java - 内部类的Gson到pojo序列化

php - 如何通过经纬度查找20公里以内的用户

java - 在 printin 处输入 int

java - 为什么ObjectNode在Json字符串中添加反斜杠

java - 垃圾收集和反射

Python:将str格式转换为可调用方法