Gson returns Json 对象用 `=` 而不是 `:`
Gson returns Json object with `=` instead of `:`
这是我的代码:
assertEquals(
gson.fromJson("[{\"vehicle_side\":\"driver\",\"vehicle_occupant_role\":\"driver\",\"vehicle_window\":\"front_right\",\"window_status\":10.0}]", List.class),
gson.fromJson(myJsonObject, List.class)
);
断言失败,因为:
Expected :[{vehicle_window=front_right, vehicle_occupant_role=driver, window_status=10.0, vehicle_side=driver}]
Actual :[{"vehicle_side":"driver","vehicle_occupant_role":"driver","vehicle_window":"front_right","window_status":10.0}]
为什么我期望的对象包含 =
而不是 :
?
我什至尝试使用硬编码的实际 json 字符串,但我得到相同的结果:
默认情况下,toString()
映射 ':'
到 '='
。要解决此问题,请使用从 myJsonObject
获取 jsonString
并将其传递给 gson.fromJson()
。您可以为此使用 ObjectMapper,或 Gson 本身。
使用 objectMapper:
objectMapper.writeValueAsString(myJsonObject);
使用 Gson:
gson.toJson(myJsonObject);
这是我的代码:
assertEquals(
gson.fromJson("[{\"vehicle_side\":\"driver\",\"vehicle_occupant_role\":\"driver\",\"vehicle_window\":\"front_right\",\"window_status\":10.0}]", List.class),
gson.fromJson(myJsonObject, List.class)
);
断言失败,因为:
Expected :[{vehicle_window=front_right, vehicle_occupant_role=driver, window_status=10.0, vehicle_side=driver}]
Actual :[{"vehicle_side":"driver","vehicle_occupant_role":"driver","vehicle_window":"front_right","window_status":10.0}]
为什么我期望的对象包含 =
而不是 :
?
我什至尝试使用硬编码的实际 json 字符串,但我得到相同的结果:
默认情况下,toString()
映射 ':'
到 '='
。要解决此问题,请使用从 myJsonObject
获取 jsonString
并将其传递给 gson.fromJson()
。您可以为此使用 ObjectMapper,或 Gson 本身。
使用 objectMapper:
objectMapper.writeValueAsString(myJsonObject);
使用 Gson:
gson.toJson(myJsonObject);