繁体   English   中英

如何在 java 中将一个字符串分隔为多个 json object?

[英]how can i Separate a string to many json object in java?

我需要一些帮助:我有一个通过 http GET 请求得到的字符串,在这个字符串中有很多项目写为 json 我的问题是如何分离或检索这个项目并将其保存为 Z466DEEC76ECDF5FCA6D38571F623 文件

这是我打印我的回复的方式:

String responseBody = EntityUtils.toString(response.getEntity());
System.out.println(responseBody);

这可能对您有用:

import java.io.File;
import java.io.IOException;

import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;

public class Test {
    
    
    public static void main(String[] args) throws IOException {
        ObjectMapper  objectMapper = new ObjectMapper();
        String responseBody ="{ \"result\": [ { \"name\": \"tom\", \"gender\": \"male\", \"address\": {\"city\": \"NY\", \"town\": \"US\"}, \"age\": \"20\"}, { \"name\": \"sarah\", \"gender\": \"female\", \"address\": {\"city\": \"NY\", \"town\": \"US\"}, \"age\": \"22\"}] } ";
        JsonNode jsonNode = objectMapper.readValue(responseBody, JsonNode.class);
        JsonNode jsonArray =jsonNode.get("result");
        
        if (jsonArray.isArray()) {
            for (JsonNode objNode : jsonArray) {
                String fileName = String.format( "file%s.json",objNode.get("name").asText());
                objectMapper.writeValue(new File(fileName), objNode);
            }
        }
    
    }

}

这里我将responseBody转换为 JsonNode object,然后迭代result字段的每个元素并将其保存为文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM