我想在我的应用程序解析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