我正在处理 JSON 文件来比较它们的数据。我只想检查 1 个 json 的值是否与第二个 json 文件的值相同。 两者都具有相同的键名和顺序。
JSON 文件数据如下所示:
{ "ab_property": [ { "name": "abc", "value": "1" },
最佳答案
我已经解决了你的问题。你也可以使用 key 而不是 for 循环来直接匹配值。
import java.io.FileReader;
import java.util.Set;
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
public class compareJsonFile {
public static void main(String[] args) throws Exception {
JSONParser parser = new JSONParser();
try {
Object obj = parser.parse(new FileReader("/home/chandrakant/Desktop/json1.json"));
Object obj1 = parser.parse(new FileReader("/home/chandrakant/Desktop/json2.json"));
JSONObject jsonObject = (JSONObject) obj;
JSONObject jsonObject1 = (JSONObject) obj1;
Set<String> s = jsonObject.keySet();
for (String str : s) {
System.out.println("key:" + str + " : value1:" + jsonObject.get(str) + ":value2:" + jsonObject1.get(str));
//compare value of json1 with json2
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
如有遗漏,请评论我。
关于java - 如何在java中比较2个JSON文件的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52983557/