1

我有一个字符串数组:

a = ["bob","jade","smith"]

我想在我的 Android 应用程序中将其转换为如下所示的 JSON 输出,此数据需要发送到服务器。

{"names":["bob","jade","smith"]}

请帮忙。

我试过这个:

Gson abs = new Gson();
String data = abs.toJson(a);
JSONObject jObjectType = new JSONObject();
jObjectType.put("names",data);
data=jObjectType.toString();

这是我在日志上的输出:

{"names":"[\"bob\",\"jade\",\"smith\"]"}
4

2 回答 2

1
JSONArray names = new JSONArray(Arrays.asList(a));
JSONObject jsonToSend = new JSONObject();
jsonToSend.put("names", names);
于 2013-03-23T19:00:53.637 回答
0

查看Gson,该库允许您将任何对象转换为 JSON 格式,并在收到 JSON 后返回相同的对象。

(Serialization)
Gson gson = new Gson();
int[] values = { 1 };
gson.toJson(values);       ==> prints [1]

(Deserialization)
int one = gson.fromJson("1", int.class);
Integer one = gson.fromJson("1", Integer.class);
Long one = gson.fromJson("1", Long.class);
Boolean false = gson.fromJson("false", Boolean.class);
String str = gson.fromJson("\"abc\"", String.class);
String anotherStr = gson.fromJson("[\"abc\"]", String.class);
于 2013-03-23T18:53:39.517 回答