gpt4 book ai didi

java - 从 Java 列表创建 JSON 字符串数组

转载 作者:行者123 更新时间:2023-11-29 07:24:35 25 4
gpt4 key购买 nike


我有一个包含 Java POJO 的 java.util.List,我想将其呈现为 JSON 数组字符串。例如:

[
{ "name": "abc", "age": 50 },
{ "name": "def", "age": "25" }
];

使用我添加的 Java EE JSON Api:

public String createJsonArrayFromList(List<Person> list) {
JsonArrayBuilder jsonArray = Json.createArrayBuilder();
for(Person c : list) {
jsonArray.add(Json.createObjectBuilder()
.add("name", c.getName())
.add("surname", c.getSurname()));
}
JsonArray array =jsonArray.build();
return array.toString();
}

但是,返回的不是JSON字符串数组,而是"org.glassfish.json.JsonArrayBuilderImpl@761c5d2f"

我尝试过:

StringWriter buffer = new StringWriter();
Json.createWriter(buffer).writeObject(array);

但是 writeObject 需要一个不同的对象类型而不是 JsonArray。有帮助吗?

最佳答案

使用writeArray代替writeObject:

JsonArray arr = ...;
JsonWriter writer = Json.createWriter(...)
writer.writeArray(arr);
writer.close();

参见 the docs .

关于java - 从 Java 列表创建 JSON 字符串数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56439377/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com