You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从JSONArray嵌套对象中获取text字段值?附代码示例

正确获取JSON数组中text字段值的方法

你的问题出在values是JSON数组类型,不能通过values.text这种对象嵌套的方式直接访问。需要先获取数组,再逐个取出里面的对象来读取text字段。

完整实现代码

// 先确保output不为空且有效
JSONObject output1 = null;
if (output != null && !output.isEmpty()) {
    output1 = new JSONObject(output);
}

if (output1 != null) {
    // 获取values对应的JSON数组
    JSONArray valuesArray = output1.getJSONArray("values");
    
    // 遍历数组获取每个元素的text值
    for (int i = 0; i < valuesArray.length(); i++) {
        JSONObject item = valuesArray.getJSONObject(i);
        String text = item.getString("text");
        // 这里可以处理获取到的text,比如打印或者存储
        System.out.println("第" + (i+1) + "个text值:" + text);
    }

    // 如果只需要获取指定索引的text(比如第一个)
    if (valuesArray.length() > 0) {
        JSONObject firstItem = valuesArray.getJSONObject(0);
        String firstText = firstItem.getString("text");
    }
}

关键说明

  • 必须先通过getJSONArray("values")拿到数组对象,不能直接用.访问数组内的字段
  • 数组元素是JSONObject类型,需要用getJSONObject(index)取出单个对象后,再用getString("text")获取对应值
  • 实际使用时建议添加JSONException异常处理,避免数组为空或字段不存在时抛出异常

内容的提问来源于stack exchange,提问作者damla Yilmaz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 12:50:22