所以我尝试使用这个json文件,但是当我尝试用jsonobject解析它时,它给了我一个错误。我试图找到类似的问题,但似乎ppl没有相同的东西。
代码生成此错误消息
Exception in thread "main" org.json.JSONException:
A JSONObject text must begin with '{' at 1 [character 2 line 1]
java 语:
public void readSubjects(String filename){
obj =new JSONObject(filename.trim());
objArr=obj.getJSONArray("subjects".trim());
String tmpName;
String tmpRealName;
for(int i=0;i<objArr.length();i++){
tmpName=objArr.getJSONObject(i).getString("subject_code");
tmpRealName=objArr.getJSONObject(i).getString("name");
System.out.println(tmpName + " " + tmpRealName);
}
}
json文件:
{
"teachers": [
{
"name": [
"Peremann"
],
"age": 22,
"subject": [
"pgr200"
],
"availability": true,
"contact_info": ""
},
{
"name": "Jarand",
"age": 23,
"subject": "root"
}
],
"subjects": [
{
"subject_code": "pgr200",
"name": "Avansert Javaprogrammering",
"campus_priority": "Fjerdingen",
"educationForm": "",
"subjectProgram": "",
"duration": "X",
"amountOfHours": "",
"amountOfStudents": 12
}
],
"studentGroups": [
{
"students": []
}
],
"rooms": [
{
"room_code": "F11",
"fasilitetsstoette": "test",
"max-capasity": 50,
"room-size": "X"
}
]}
2条答案
按热度按时间s71maibg1#
这条线
不正确。建造商
JSONObject
需要实际的json字符串,而不是文件名。首先读取文件的内容,然后将其传递给
JSONObject
的构造函数。2q5ifsrm2#
我为您检查了samebug,看看我们的用户是否有类似的问题。他们提出了以下建议。
json无效,或者您试图Map到其他模型
将单引号(')替换为双引号(“)。在json中应该使用双引号。
我还发现了一个github注解,它可能很有用。