gpt4 book ai didi

java - 使用 HashMap 将数据解析为 JSON

转载 作者:行者123 更新时间:2023-12-02 10:32:27 26 4
gpt4 key购买 nike

我正在尝试将十六进制图转换为可用的 json 代码,但我不知道如何实现

protected Map<String, String> getParams() {
Map<String, String> params = new HashMap<String, String>();
params.put("user_id", userID );
Map<String, String> foodOrder = new HashMap<String, String>();
foodOrder.put("id",productID);

foodOrder.put("item_count",numberOfItems.getText().toString());

params.put("product", foodOrder.toString());
Arrays.deepToString(new JSONObject[]{new JSONObject(params)});

return params;
}

它应该看起来像这样:

{
"user_id": 2,
"product": {
"id": 15,
"item_count": 99
}
}

但现在我明白了:

{
"product": "{item_count=1, id=1}",
"user_id": "2"
}

我正在使用 Volly 库将数据表单应用程序传递到服务器。

最佳答案

toString() 方法不会返回 json,除非您以这种方式实现它。在您的情况下,您正在使用 hashMap 的 toString 所以它不会。尝试使用 Gson 将 map 转换为 json 字符串:

protected Map<String, String> getParams()
{
Map<String, String> params = new HashMap<String, String>();
params.put("user_id", userID );
Map<String, String> foodOrder = new HashMap<String, String>();
foodOrder.put("id",productID);
foodOrder.put("item_count",numberOfItems.getText().toString());
Gson gson = new Gson();
params.put("product", gson.toJson(foodOrder));
Arrays.deepToString(new JSONObject[]{new JSONObject(params)});
return params;
}

关于java - 使用 HashMap 将数据解析为 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53538522/

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