我收到 JSON
,但它不是按字母顺序排列的。如何按 KEY
排序 json
?
JSON:
{"b":"3","c":"1","a":"4"}
预期输出:
{"a":"4","b":"3","c":"1"}
请帮我解决这个问题。我真的很感谢你的帮助!谢谢!
最佳答案
您可以使用 jackson 库。
首先添加一个jackson到maven依赖中。
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.8.7</version>
</dependency>
然后使用下面的代码。
String jsonData = "{\"e\":\"6\",\"f\":\"1\",\"b\":\"3\",\"c\":\"1\",\"a\":\"4\"}";
ObjectMapper om = new ObjectMapper();
om.configure(SerializationFeature.ORDER_MAP_ENTRIES_BY_KEYS, true);
Map<String, Object> map = om.readValue(jsonData, HashMap.class);
String json = om.writeValueAsString(map);
System.out.println(json); // result : {"a":"4","b":"3","c":"1","e":"6","f":"1"}
当我测试它时,我得到排序形式的输出。
{"a":"4","b":"3","c":"1","e":"6","f":"1"}
关于java - 如何通过 KEY 按字母顺序创建 JSON (Java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42732655/