java - Android Java - 获取 JSON 值

标签 java android json

我正在开发一个 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/

相关文章:

java - 让编码员监听变化?

java - 下面的程序将如何工作?

java - FileChannel 返回 Assets 文件夹中文件的错误文件大小

android - SlidingTabLayout 选项卡之间的通信

android - 要求用户连接到互联网或退出应用程序(android)

javascript - 尝试将 BASH 安装到 VSCode 时无法编辑用户设置。 "terminal.integrated.shell.windows": "C:\\Program Files\\Git\\bin\\bash.exe",

php - Google Charts 日期时间问题,现在不显示 JSON 数据

json - 响应数据为零

java - 无法从 Mule 接收到 HTTP 响应

java - 有没有办法将通用数组作为参数传递