我正在开发一个 Android 应用程序,我正在尝试以这种 JSON 格式获取 UPC 的值..但是遇到了麻烦..我可以使用以下方法获取过敏原值:
JSONObject jObj = new JSONObject(data);
JSONArray jsonData = jObj.getJSONArray("allergens");
但出于某种原因,我似乎无法获得 UPC 值。非常感谢任何帮助!
JSON:
{
"upc": "028400071932",
"product_name": "CRUNCHY CHEESE",
"canStoreName": "false",
"processedIngredients": "",
"allergens": [{
"allergen_name": "Cereals",
"allergen_value": 2,
"allergen_red_ingredients": "CORN, Corn, Maltodextrin, CORN MEAL, ENRICHED CORN MEAL",
"allergen_yellow_ingredients": "VEGETABLE OIL, CITRIC ACID, MONOSODIUM GLUTAMATE, Natural and Artificial Flavors"
}, {
"allergen_name": "Shellfish",
"allergen_value": 0,
"allergen_red_ingredients": "",
"allergen_yellow_ingredients": ""
}],
"ingredients": "ENRICHED CORN MEAL (CORN MEAL, FERROUS SULFATE, NIACIN, THIAMIN MONONITRATE, RIBOFLAVIN, AND FOLIC ACID), VEGETABLE OIL (CORN, SOYBEAN CANOLA, AND/OR SUNFLOWER OIL), WHEY, CHEDDAR CHEESE (MILK, CHEESE CULTURES, SALT, ENZYMES), SALT, SEA MINERALS(CALCIUM CARBONATE AND MAGNESIUM CARBONATE), MALTODEXTRIN (MADE FROM CORN), WHEY PROTEIN CONCENTRATE, MONOSODIUM GLUTAMATE, NATURAL AND ARTIFICIAL FLAVORS LACTIC ACID, CITRIC ACID, AND ARTIFICIAL COLOR (YELLOW 6, YELLOW 5)."
}
最佳答案
{ // json object node
"upc": "028400071932",// string
{
代表json对象节点
[
代表json数组节点
所以用
JSONObject jObj = new JSONObject(data);
String value = jObj.getString("upc");
另一个例子
"allergens": [ // jsonarray allergens
{ // json object
"allergen_name": "Cereals", // string
所以要获取 allergen_name
JSONArray jsonData = jObj.getJSONArray("allergens");
for(int i=0;i<jsonData.length();i++)
{
JSONObject jb = (JSONObject) jsonData.get(i);
String allergenname = jb.getString("allergen_name");
}
关于java - Android Java - 获取 JSON 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20179333/