【发布时间】:2020-09-16 15:08:07
【问题描述】:
我需要将包含 JSON 文件数据的字符串解析为 JSONObject 并遍历其内容以获取其键和值以供以后进一步处理。在将文件转换为字符串后,我一直在解析文件的内容。我尝试使用 parse() , quote() 但似乎我错过了一个细节并且我犯了一个重大错误。
这是我处理的 json 文件的 sn-p:
{
{
"id":0,
"name": "project1",
"couverage": "100",
"completness": "44.8",
"consistency": "46",
}
{
"id":1,
"name": "project2",
"couverage": "100",
"completness": "44.8",
"consistency": "46",
}
{
"id":2,
"name": "project3",
"couverage": "100",
"completness": "44.8",
"consistency": "46",
}
}
这是我开发的代码
public void readfromJsonFile(File jsonFile, long readTimeStamp) {
logger.info("Read from JSON file: {}", jsonFile.getName());
try{
//Read File Content
String content = new String(Files.readAllBytes(jsonFile.toPath()));
JSONParser jsonParser = new JSONParser(content);
JSONObject obj = (JSONObject) jsonParser.parse();
JSONArray key = obj.names();
for (int i = 0; i < key.length (); ++i) {
String keys = key.getString(i);
System.out.println(keys);
String value = obj.getString (keys);
System.out.println(value);
}catch (Exception e) {
logger.error("Failed to parse JSON File: {}", jsonFile.getName());
}
}
【问题讨论】:
-
你的问题是在获取key和value的时候?
-
是的,我无法读取我的内容字符串(或 Json 文件)
-
我可以举一个杰克逊的例子吗?你会感激吗?
-
@AnishB。是的,如果它可以帮助我,为什么不呢?我将不胜感激
-
这个 json 是否正确,我没有看到方括号描述它是一个数组或列表。我没有在每个内部 json 部分之间看到逗号来分隔元素。甚至连贯性都以逗号结尾,这也是错误的。这甚至不能称为 json :)
标签: java json spring-boot