android - Parse a json file -


i trying parse json list view. don't no problem? got exception telling me names must strings , must unique within object.

here code:

try {              jsonstring =  "{[{\"url\":\"www.200chess.com\",\"price\":\"free\",\"name\":\"200 chess opening\"},{\"url\":\"www.midgame.com\",\"price\":\"10$\",\"name\":\"mid game tachcs\"},{\"url\":\"www.303checkmate.com\",\"price\":\"20$\",\"name\":\"303 checkmate puzzles\"},{\"url\":\"www.303winning.com\",\"price\":\"30$\",\"name\":\"303 winning strategies\"},{\"url\":\"www.bibby.com\",\"price\":\"10$\",\"name\":\"bobby fusher teaches chess\"}]}";              json= new jsonobject(jsonstring);              jsonarray jsonbook = json.getjsonarray("");              (int i=0; i<jsonbook.length();i++){                  book book =new book();                  jsonobject jsonattributes = jsonbook.getjsonobject(i).getjsonobject("");                  log.i("listbooks", jsonattributes.tostring());                  book.name = jsonattributes.getstring(key_name);                  log.i("listbooks", book.name);                  book.price = jsonattributes.getstring(key_price);                  book.url = jsonattributes.getstring(key_url);                  books.add(book);              }          } catch (jsonexception e) {              e.printstacktrace();          } 

i got exception:

06-05 21:59:42.283: w/system.err(541): org.json.jsonexception: names must strings, [{"url":"www.200chess.com","name":"200 chess opening","price":"free"},{"url":"www.midgame.com","name":"mid game tachcs","price":"10$"},{"url":"www.303checkmate.com","name":"303 checkmate puzzles","price":"20$"},{"url":"www.303winning.com","name":"303 winning strategies","price":"30$"},{"url":"www.bibby.com","name":"bobby fusher teaches chess","price":"10$"}] of type org.json.jsonarray @ character 361 of {[{"url":"www.200chess.com","price":"free","name":"200 chess opening"},{"url":"www.midgame.com","price":"10$","name":"mid game tachcs"},{"url":"www.303checkmate.com","price":"20$","name":"303 checkmate puzzles"},{"url":"www.303winning.com","price":"30$","name":"303 winning strategies"},{"url":"www.bibby.com","price":"10$","name":"bobby fusher teaches chess"}]} 06-05 21:59:42.283: w/system.err(541):  @ org.json.jsontokener.syntaxerror(jsontokener.java:446) 06-05 21:59:42.293: w/system.err(541):  @ org.json.jsontokener.readobject(jsontokener.java:363) 06-05 21:59:42.293: w/system.err(541):  @ org.json.jsontokener.nextvalue(jsontokener.java:96) 06-05 21:59:42.293: w/system.err(541):  @ org.json.jsonobject.<init>(jsonobject.java:154) 06-05 21:59:42.293: w/system.err(541):  @ org.json.jsonobject.<init>(jsonobject.java:171) 06-05 21:59:42.293: w/system.err(541):  @ tn.haythem.learnchess.listbooks.getbooks(listbooks.java:157) 06-05 21:59:42.293: w/system.err(541):  @ tn.haythem.learnchess.listbooks.oncreate(listbooks.java:52) 06-05 21:59:42.293: w/system.err(541):  @ android.app.instrumentation.callactivityoncreate(instrumentation.java:1047) 06-05 21:59:42.293: w/system.err(541):  @ android.app.activitythread.performlaunchactivity(activitythread.java:1611) 06-05 21:59:42.303: w/system.err(541):  @ android.app.activitythread.handlelaunchactivity(activitythread.java:1663) 06-05 21:59:42.303: w/system.err(541):  @ android.app.activitythread.access$1500(activitythread.java:117) 06-05 21:59:42.303: w/system.err(541):  @ android.app.activitythread$h.handlemessage(activitythread.java:931) 06-05 21:59:42.313: w/system.err(541):  @ android.os.handler.dispatchmessage(handler.java:99) 06-05 21:59:42.313: w/system.err(541):  @ android.os.looper.loop(looper.java:123) 06-05 21:59:42.313: w/system.err(541):  @ android.app.activitythread.main(activitythread.java:3683) 06-05 21:59:42.313: w/system.err(541):  @ java.lang.reflect.method.invokenative(native method) 06-05 21:59:42.313: w/system.err(541):  @ java.lang.reflect.method.invoke(method.java:507) 06-05 21:59:42.313: w/system.err(541):  @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:839) 06-05 21:59:42.313: w/system.err(541):  @ com.android.internal.os.zygoteinit.main(zygoteinit.java:597) 06-05 21:59:42.323: w/system.err(541):  @ dalvik.system.nativestart.main(native method) 

can body please tell me wrong in code?

the array in json object has no name, not valid, e.g. should start this:

"{\"thearrayname\":[{\"url\":\"www.200chess.com\",\" ... 

or remove outer { , } , parse jsonarray directly e.g.:

[{\"url\":\"www.200chess.com\",\" ...  

Comments

Popular posts from this blog

jquery - Invalid Assignment Left-Hand Side -

java - Play! framework 2.0: How to display multiple image? -

gmail - Is there any documentation for read-only access to the Google Contacts API? -