Java 从列表中获取json<;地图<;字符串,字符串>&燃气轮机;
有人能帮我找出代码中的错误吗:Java 从列表中获取json<;地图<;字符串,字符串>&燃气轮机;,java,json,cucumber-jvm,Java,Json,Cucumber Jvm,有人能帮我找出代码中的错误吗: public void request_Body_From_Data(String json, DataTable requestBody) throws Throwable { List<Map<String, String>> body = requestBody.asMaps(String.class, String.class); String converted_Json = convert_listmap_t
public void request_Body_From_Data(String json, DataTable requestBody) throws Throwable {
List<Map<String, String>> body = requestBody.asMaps(String.class, String.class);
String converted_Json = convert_listmap_to_json_string(body);
printJson(converted_Json);
}
public String convert_listmap_to_json_string(List<Map<String, String>> map) {
JSONArray json_arr = new JSONArray();
for (Map<String, String> list : map) {
JSONObject json_obj = new JSONObject();
for (Map.Entry<String, String> entry : list.entrySet()) {
String key = entry.getKey();
String value = entry.getValue();
try {
if (key.equals("C")) {
break;
} else {
json_obj.put(key, value);
}
} catch (JSONException jsone) {
jsone.printStackTrace();
}
json_arr.put(json_obj);
}
}
return json_arr.toString();
}
我得到了以下json格式:
[{“B”:“test”,“A”:“trade”},{“B”:“test”,“A”:“trade”}
预期结果应为:
"A": {
"trade": "test",
"Code": "789",
}
使用Jackson。您只需执行以下操作:-
ObjectMapper mapper = new ObjectMapper();
mapper.enable(SerializationFeature.INDENT_OUTPUT); // If pretty-print is required
System.out.println(mapper.writeValueAsString(body));
非常感谢@Ark。我正处于学习阶段。非常感谢Kaushik。
ObjectMapper mapper = new ObjectMapper();
mapper.enable(SerializationFeature.INDENT_OUTPUT); // If pretty-print is required
System.out.println(mapper.writeValueAsString(body));