我想JSON字符串解析:JSON字符串不会被解析
MyJsonString:
http://www.androidcompetencycenter.com/2009/10/json-parsing-in-android/
http://p-xr.com/android-tutorial-how-to-parse-read-json-data-into-a-android-listview/
:{
"status": "ok",
"count": 2,
"count_total": 9,
"pages": 5,
"posts": [
{
"id": 432,
"type": "post",
"title": "Title 1"
},
{
"id": 434,
"type": "post",
"title": "Title 2"
}
]
}
我走过了
T他的例子工作正常,但为此,我编辑了JSON字符串,使其成为一个Java字符串。
例: JSON字符串:
{"menu": {
"id": "file",
"value": "File",
"popup": {
"menuitem": [
{"value": "New", "onclick": "CreateNewDoc()"},
{"value": "Open", "onclick": "OpenDoc()"},
{"value": "Close", "onclick": "CloseDoc()"}
]
}
}}
我编辑为:
String jsonStr = "{menu: {" +
"id: file," +
"value: File," +
"popup: {" +
"menuitem: [" +
"{value: New, onclick: CreateNewDoc()}," +
"{value: Open, onclick: OpenDoc()}," +
"{value: Close, onclick: CloseDoc()}" +
"]" +
"}" +
"}}";
但是当我尝试相应的编辑它是一个有效的Java字符串后,解析这个myJsonString和运行项目,它给了我警告,并且它不显示给我标题的Toast消息。
的logcat:
10-19 18:36:45.972: WARN/System.err(1250): org.json.JSONException: Unterminated object at character 101 of { status : ok ,count : 2,count_total : 9,pages : 5,posts : [{id : 432,type : post ,title : Title 1 ,},{id : 434,type : post ,title : Title 2 ,},]}
我不知道我做错了吗?即使我不知道,如何以编程方式将Json字符串转换为有效的Java字符串?
任何帮助表示赞赏。
编辑:
String jsonString="{\" status : ok \",\"count : 2\",\"count_total : 9\",\"pages : 5\",\"posts\" : [{\" id\" : \"432\",\"type\": \" post\", \"title\" : \" Title 1 \"},{ \"id \": \"434\",\type : post ,\"title\" : \" Title 2\"}]}";
JSONObject jsonObj = new JSONObject(jsonString);
String status_value = jsonObj.getString("status");
Toast.makeText(context,"Status_value= "+status_value, Toast.LENGTH_LONG).show();
我想敬酒状态值这个way.But我不能。请帮忙。
我不明白为什么你编辑的JSON字符串,编辑后的版本并不像有效的JSON格式到我所以这可能就是为什么你会收到错误。 –
但是在例子中,它是工作。我是JSON的新手,所以我开始使用示例,因为它的工作,我试图编辑我的JSON字符串like.If我不应该编辑JSON字符串,如何使用它与Java字符串对象? – Hiral
你为什么要编辑JSON字符串?按原样使用。使用JSON对象和JSON数组从中获取值。 – user370305