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

如何遍历含数组的JSON值提取图片字符串?附数据库取值代码示例

提取JSON数组中的图片路径解决方案

Hey there! Let's break down how to pull those image paths from your JSON array string. Right now, your strArrayCol[4] holds a string formatted as a JSON array, where each element is a JSON object with a path field pointing to an image. Here are two practical ways to parse and extract the paths:

方案一:沿用org.json库(和你当前代码工具匹配)

Since you're already using json_data.getString() (which is part of the org.json package), this is the most straightforward approach:

import org.json.JSONArray;
import org.json.JSONObject;

// 1. Get the JSON array string from your array
String jsonArrayStr = strArrayCol[4];

try {
    // 2. Parse the string into a JSONArray object
    JSONArray imageJsonArray = new JSONArray(jsonArrayStr);
    
    // 3. Loop through each element to extract the "path" value
    for (int i = 0; i < imageJsonArray.length(); i++) {
        JSONObject imageObj = imageJsonArray.getJSONObject(i);
        String imagePath = imageObj.getString("path");
        // You can store this path in a list or use it directly
        System.out.println("Extracted image path: " + imagePath);
    }
} catch (Exception e) {
    // Handle parsing errors (e.g., invalid JSON, missing "path" field)
    e.printStackTrace();
}

方案二:使用Gson库(更简洁的对象映射方式)

If your project uses Gson, you can map the JSON directly to a Java object for cleaner code:

First, create a simple class that matches your JSON structure:

public class ImageEntry {
    private String path;

    // Generate getter and setter
    public String getPath() {
        return path;
    }

    public void setPath(String path) {
        this.path = path;
    }
}

Then parse and extract paths:

import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.util.List;

String jsonArrayStr = strArrayCol[4];
Gson gson = new Gson();

// Convert JSON array string to a List of ImageEntry objects
List<ImageEntry> imageList = gson.fromJson(jsonArrayStr, new TypeToken<List<ImageEntry>>(){}.getType());

// Iterate through the list to get each path
for (ImageEntry entry : imageList) {
    String imagePath = entry.getPath();
    System.out.println("Extracted image path: " + imagePath);
}

Quick Notes

  • Don't skip error handling: JSON parsing can fail if the string is malformed or the path field is missing, so wrap your code in try-catch blocks.
  • The escaped slashes (\/\/) in your JSON string will automatically be converted to normal / during parsing, no extra work needed.

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 09:08:55