java - 将字符串解析为哈希图时 GSON 解析错误
问题描述
我正在尝试使用 Gson 解析字符串
String str = "{key=sample value}";
new Gson().fromJson(str, HashMap.class())
为此,我收到了 JSONSyntax 异常。如果我将字符串更改为“{key=samplevalue}”,它可以正常工作(删除空间)。谁能解释一下。应该怎么做才能让我得到 hashmap 作为“key”=“sample value”
解决方案
在JSON 规范中,键和值(如果是字符串类型)都必须用双引号引起来。因此,在您的示例中,有效的 JSON 是:
{"key":"sample value"}
在 Java 中,"
应该转义:
String str = "{\"key\":\"sample value\"}";
推荐阅读
- python-3.x - 每次调用时加 1 的函数 - Pytho
- javascript - 通过条带结帐会话 node.js 传递元数据
- php - 按具有大集合的关系列排序
- angular - 未定义标识符“名称”。'object' 不包含这样的成员
- haskell - 使用 Haskell 的 Control.Monad.Random.Class.fromList 和 System.Random
- node.js - CORS 预检错误,Angular 到 Nodejs 本地服务器
- python - 根据列值重新排列行
- sql - 带有 JOINING 表的 MAX 和 SUM 函数
- android - 如何使垂直条颤动,如图所示
- android - 从 Sharesheet 接收所选应用程序选择的联系人