我正在尝试在我的应用程序中解析 json:
所以首先我为我的android应用程序创建了常量类,它有大约6个app.config变量:
(等级: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