gpt4 book ai didi

java - 从 jsonobject 中删除行

转载 作者:行者123 更新时间:2023-12-02 13:40:08 25 4
gpt4 key购买 nike

我有一个像这样的 JSON 对象,它用于从 opencart API 获取运输方式。我之前在这篇文章 how to fill array from json object 中询问过“如何在 android 中从这个 jsonobject 填充数组” ,但我没有收到任何答复。

现在我想删除一些标有“====>”符号的行

{
"shipping_methodsx": [
{
"title": "حمل و نقل با هزینه ثابت",
"quote": [
{
====> "flat": {
"code": "flat.flat",
"title": "هزینه حمل و نقل",
"cost": "10000",
"tax_class_id": "0",
"text": "10,000 تومان"
====> }
}
],
"sort_order": "1",
"error": false
},
{
"title": "حمل و نقل رایگان",
"quote": [
{
====> "free": {
"code": "free.free",
"title": "حمل و نقل رایگان",
"cost": 0,
"tax_class_id": 0,
"text": "0 تومان"
====> }
}
],
"sort_order": "3",
"error": false
},
{
"title": "پیک فروشگاه",
"quote": [
{
====> "pickup": {
"code": "pickup.pickup",
"title": "ارسال توسط پیک فروشگاه",
"cost": 0,
"tax_class_id": 0,
"text": "0 تومان"
====> }
}
],
"sort_order": "2",
"error": false
}
]
}

并使其可以在我的 Android 应用程序中使用,如下所示:

{
"shipping_methodsx": [
{
"title": "حمل و نقل با هزینه ثابت",
"quote": [
{
"code": "flat.flat",
"title": "هزینه حمل و نقل",
"cost": "10000",
"tax_class_id": "0",
"text": "10,000 تومان"
}
],
"sort_order": "1",
"error": false
},
{
"title": "حمل و نقل رایگان",
"quote": [
{
"code": "free.free",
"title": "حمل و نقل رایگان",
"cost": 0,
"tax_class_id": 0,
"text": "0 تومان"
}
],
"sort_order": "3",
"error": false
},
{
"title": "پیک فروشگاه",
"quote": [
{
"code": "pickup.pickup",
"title": "ارسال توسط پیک فروشگاه",
"cost": 0,
"tax_class_id": 0,
"text": "0 تومان"
}
],
"sort_order": "2",
"error": false
}
]
}

谁能帮我做这个吗?

最佳答案

使用 gson 将 Json 字符串转换为 json 模型,然后更改 json 模型的内容以满足您的需要。最后将json模型转换回json字符串。这里是示例代码:

public class Model {
List<Model1> shipping_methodsx;

class Model1 {
String title;
String sort_order;
boolean error;

List<Model2> quote;
List<Model3> quote1;
}

class Model2 {
@SerializedName(value = "flat", alternate = {"free", "pickup"})
Model3 key;
}

class Model3 {
String code;
String title;
String cost;
String tax_class_id;
String text;
}
}

public static String removeSomeJson(String json) {
Gson gson = new Gson();

Model ret = gson.fromJson(json, Model.class);

for(Model.Model1 model1: ret.shipping_methodsx){
model1.quote1 = new ArrayList<>();
for(Model.Model2 model2 : model1.quote) {
model1.quote1.add(model2.key);
}
model1.quote = null;
}

return gson.toJson(ret);
}

关于java - 从 jsonobject 中删除行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42779309/

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