gpt4 book ai didi

java - 当 JSON 没有 "Name attribute"时如何使用 GSON ?

转载 作者:行者123 更新时间:2023-12-01 13:21:49 25 4
gpt4 key购买 nike

我有以下 JSON(来自 URL)

["Rock","Rock Argentino","Reggaeton","En Español","Reggaeton ","Reggaeton  ","Boleros","Italianos ","Cumbias ","Cumbia ","Internacional","Internacional "]

您可以看到这些字段没有“名称属性”。

我的类(class)模型如下

public class KaraokeCategoryModel {
private String name;

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

}

但是 GSON 无法识别我的属性“名称”

Type karaokeCollection = new TypeToken<Collection<KaraokeCategoryModel>>() {}.getType();
_karaoke_cartegory_response = new Gson().fromJson(reader, karaokeCollection);

稍后我创建适配器

_karaoke_category_adapter = new KaraokeCategoryAdapter(getSupportActionBar().getThemedContext(), R.layout.spinner_item, _karaoke_cartegory_response);
getSupportActionBar().setListNavigationCallbacks(_karaoke_category_adapter, this);

我应该怎么做才能让 GSON 使用我的模型没有问题?

最佳答案

您可以使用以下代码更轻松地做到这一点:

List<KaraokeCategoryModel> karaokeCategoryList = new ArrayList<KaraokeCategoryModel>();

JsonElement json = new JsonParser().parse(yourJsonStringValueHere);
JsonArray jsonArray = json.getAsJsonArray();
Iterator iterator = jsonArray.iterator();
while(iterator.hasNext()){
JsonElement jsonElementInArray = (JsonElement)iterator.next();

KaraokeCategoryModel karaokeCategory = new KaraokeCategoryModel();
karaokeCategory.setName(jsonElementInArray.getAsString());

karaokeCategoryList.add(karaokeCategory);
}

关于java - 当 JSON 没有 "Name attribute"时如何使用 GSON ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21974423/

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