Java org.json.JSONException:没有价格价值
我在android中获得json和解析结果。出现异常,消息为:org.json.JSONException:No value for priceJava org.json.JSONException:没有价格价值,java,android,json,Java,Android,Json,我在android中获得json和解析结果。出现异常,消息为:org.json.JSONException:No value for price W/System.err: org.json.JSONException: No value for price W/System.err: at org.json.JSONObject.get(JSONObject.java:389) W/System.err: at org.json.JSONObject.getString(JSO
W/System.err: org.json.JSONException: No value for price
W/System.err: at org.json.JSONObject.get(JSONObject.java:389)
W/System.err: at org.json.JSONObject.getString(JSONObject.java:550)
我的java类
JSONParser jsonParser = new JSONParser();
// tracks JSONArray
JSONArray albums = null;
// Album id
String album_id = null;
String song_id = null;
String album_name, song_name, price;
// single song JSON url
// GET parameters album, song
private static final String URL_SONG = "my url";
// ALL JSON node names
private static final String TAG_NAME = "name";
private static final String TAG_PRICE = "price";
private static final String TAG_ALBUM = "name"; // album
...
try {
JSONObject jObj = new JSONObject(json);
if(jObj != null){
song_name = jObj.getString(TAG_NAME);
album_name = jObj.getString(TAG_ALBUM);
price = jObj.getString(TAG_PRICE);
}
}
catch (JSONException e) {
e.printStackTrace();
}
我的json URL:
{
"id": "551"
"name": "Rent Disk"
"price": "3233333"
"album_id": "3"
"album": "Michael"
}
如何修复此异常?非常感谢 您可以在赋值之前进行这样的检查
JSONObject jObj = new JSONObject(json);
if(jObj != null) {
if(jObj.has(TAG_NAME)) {
song_name = jObj.getString(TAG_NAME);
}
if(jObj.has(TAG_ALBUM)){
album_name = jObj.getString(TAG_ALBUM);
}
if(jObj.has(TAG_PRICE)){
price = jObj.getString(TAG_PRICE);
}
}
你可以在赋值之前先打一张这样的支票
JSONObject jObj = new JSONObject(json);
if(jObj != null) {
if(jObj.has(TAG_NAME)) {
song_name = jObj.getString(TAG_NAME);
}
if(jObj.has(TAG_ALBUM)){
album_name = jObj.getString(TAG_ALBUM);
}
if(jObj.has(TAG_PRICE)){
price = jObj.getString(TAG_PRICE);
}
}
抛出以指示JSON API存在问题
FYI
{
"id": "551"
"name": "Rent Disk"
"price": "3233333"
"album_id": "3"
"album": "Michael"
}
发布你的Json
如果上面是您的json,那么它是无效的
对于您的需求,您应该使用JSONObject.has(“”)和.isNull(“”)方法
已编辑
您的完美Json是
{ "id": 551, "name": "Cho thue xe Toyota5", "price": "3233333", "album_id": "3", "album": "Huyndai" }
试试这个
JSONObject myJson = new JSONObject(json);
String getName = myJson.optString("name");
int getID= myJson.optInt("id");
抛出以指示JSON API存在问题
FYI
{
"id": "551"
"name": "Rent Disk"
"price": "3233333"
"album_id": "3"
"album": "Michael"
}
发布你的Json
如果上面是您的json,那么它是无效的
对于您的需求,您应该使用JSONObject.has(“”)和.isNull(“”)方法
已编辑
您的完美Json是
{ "id": 551, "name": "Cho thue xe Toyota5", "price": "3233333", "album_id": "3", "album": "Huyndai" }
试试这个
JSONObject myJson = new JSONObject(json);
String getName = myJson.optString("name");
int getID= myJson.optInt("id");
谢谢,我会尝试返回您是否检查了@luongkhanh先生?嗨,Rahul Khurana先生,我已经修复了此错误,我得到了正确的json格式,并且工作正常!我还根据您的代码进行测试和调试,非常完美^^^非常感谢您的帮助谢谢,我会尝试返回您是否检查了@luongkhanh先生?嗨,Rahul Khurana先生,我已修复了此错误,我获得了正确的json格式,它已经工作了!我还根据您的代码进行测试和调试,非常感谢您的帮助您的json无效检查您的json在这个网站上:-您的json无效检查您的json在这个网站上:-嗨,伙计,我已经检查并发现我的json缺少逗号:有效:{“id”:551,“name”:“Cho thue xe Toyota5”,“price”:“3233333”,“album_id”:“3”,“album”:“Huyndai”}无效:{“id”:“551”名称:““出租磁盘”“价格”:“3233333”“专辑id”:“3”“专辑”:“迈克尔”}@luongkhanh抱歉,你的<代码>{“id”:551,“名称”:“Cho thue xe Toyota5”,“价格”:“3233333”,“专辑id”:“3”,“专辑”:“Huyndai”}
现在很完美是的,我明白了,但我不知道如何更改json。请按照服务器上的建议检查我的代码,我将返回给您。您好,IntelliJ Amiya先生,我已经修复了这个错误,只需要获得正确的json格式,就可以了!非常感谢!嗨,伙计,我检查了一下,发现我的json缺少逗号:有效:{“id”:551,“name”:“Cho thue xe Toyota5”,“price”:“3233333”,“album_id”:“3”,“album_id”:“Huyndai”}无效:{“id”:“551”“name”:“Rent Disk”“price”:“3233333”“album”:“Michael”}@luongkhanh抱歉,你的{“id”:551,“name”:“Cho thue xe Toyota5”,“price”:“3233333”,“album_id”:“3”,“album”:“Huyndai”}
现在很完美是的,我明白了,但我不知道如何更改json更正。我会按照服务器的建议查看我的代码,我会回复你的。你好,IntelliJ Amiya先生,我已经修复了这个错误,只需要获得正确的json格式,就可以了!非常感谢!