2016-09-07 15 views
0

JSONTokenerをJSONArrayとJSONObjectにキャストしたいと思っています。 非常にシンプルで、いくつかの検索を行いましたが、サンプルコードが私のためには機能しません。何が間違っていますか?JSONTokenerをJSONArrayとJSONObjectに変換する方法は?

StringBuilder builder= new StringBuilder(); 
//some codes to fill my StringBuilder 

JSONTokener tokener = new JSONTokener(builder.toString()); 

JSONArray finalResult = new JSONArray(tokener); 
//error: Unhandle exeception:org.json.JsonExeception 

または

JSONObject myJSONObject=new JSONObject(tokener) 
//error: Unhandle exeception:org.json.JsonExeception 

は、このコードの何が問題になっているのですか?

答えて

1

tokenerからJSONObjectを作成しないでください。単に.nextValue()をキャストします。

JSONObject object = (JSONObject) new JSONTokener(json).nextValue(); 
String query = object.getString("query"); 
JSONArray locations = object.getJSONArray("locations"); 

https://developer.android.com/reference/org/json/JSONTokener.html

:公式の例から

関連する問題