首页 > 解决方案 > 将字符串解析为哈希图时 GSON 解析错误

问题描述

我正在尝试使用 Gson 解析字符串

String str = "{key=sample value}";
new Gson().fromJson(str, HashMap.class())

为此,我收到了 JSONSyntax 异常。如果我将字符串更改为“{key=samplevalue}”,它可以正常工作(删除空间)。谁能解释一下。应该怎么做才能让我得到 hashmap 作为“key”=“sample value”

标签: javaandroidjsonparsinggson

解决方案


JSON 规范中,(如果是字符串类型)都必须用双引号引起来。因此,在您的示例中,有效的 JSON 是:

{"key":"sample value"}

在 Java 中,"应该转义:

String str = "{\"key\":\"sample value\"}";

推荐阅读