我想在我的應用程序解析JSON:錯誤在Java中
所以首先我創建不變類我的Android應用程序,這對的app.config約6個變量:
(類別:1)
public class Constants{
// url to make request
public static String url = "http://server.com/";
// JSON Node names
public static final String TAG_CONTACTS = "contacts";
public static final String TAG_ID = "id";
public static final String TAG_NAME = "name";
public static final String TAG_EMAIL = "email";
public static final String TAG_ADDRESS = "address";
public static final String TAG_GENDER = "gender";
}
現在我想,所以我說幹就幹,創建了不同的類中使用此不同的等級:
(等級:2)
public class ReadFiles{
public void readConstant(){
//appConfig is JSONArray
JSONArray appConfig = null;
// Creating JSON Parser instance
JSONParser jParser = new JSONParser();
// getting JSON string from URL
JSONObject json = jParser.getJSONFromUrl(c.url);
try {
// Getting Array of Contacts
contacts = json.getJSONArray(Constants.TAG_CONTACTS);
// looping through All Contacts
for(int i = 0; i < contacts.length(); i++){
JSONObject d = details.getJSONObject(i);
// Storing each json item in variable
String id = d.getString(Constants.TAG_ID); //Error:
//ERROR : The method getString(int) in the type JSONArray is not applicable for the arguments-(String)
String name = d.getString(Constants.TAG_NAME);
String email = d.getString(Constants.TAG_EMAIL);
String address = d.getString(Constants.TAG_ADDRESS);
String gender = d.getString(Constants.TAG_GENDER);
} catch (JSONException e) {
e.printStackTrace();
}
}
我得到塊上的錯誤:String name = c.getString(Constants.TAG_NAME);
我想通過解析json將常量值應用於局部變量。
我跟着日食的提示,也還嘗試做
String name = c.(Constants.TAG_NAME);
但仍沒有運氣。這個區塊有什麼問題?我如何將json值分配給局部變量? 爲了你的知識:這是我試圖實現的:android-json-parsing-tutorial 但我想保持在不同的班級不斷。
更新:所以我做了你建議的改變,我也得到新的錯誤:
String tabTitle = appConfig.(ConfigConstants.TITLE); //Error: Syntax error on token ".", Identifier expected after this token
您試圖通過類實例訪問靜態成員,你sh應該使用類名訪問靜態成員。 – Habib 2013-03-25 06:27:44
檢查我的答案更新,以便更新+清理代碼並將代碼粘貼到使用tabTitle的地方。目前的問題與此無關。 – SudoRahul 2013-03-25 06:48:45