将<namevaluepair>列表到JSON对象</namevaluepair>

时间:2015-03-15 06:33:09

标签: android json node.js express jsonobject

所以这里我有一个基本的NameValuePair数组。

List<NameValuePair> myList;
myList = new ArrayList<NameValuePair>(3);
myList.add(new BasicNameValuePair("username", "良好"));
myList.add(new BasicNameValuePair("email", email));
myList.add(new BasicNameValuePair("password", password));

如何将其转换为JSON对象数组?我正在使用express在nodejs中编写应用程序。我必须将列表指定为charset UTF-8。我认为唯一的方法是将列表转换为JSON对象。

目前,我正在直接传递名单:

HttpPost httpPost = new HttpPost(url);
httpPost.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));
HttpResponse httpResponse = httpClient.execute(httpPost);

这个问题是nodejs无法解释除英文字符之外的任何字符。因此,如果我将列表更改为JSON对象,我可以指定标题和字符集,然后表达可以正确解释字符。

基本上,如何将此List myList转换为JSON对象数组?

感谢。任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:2)

JSONObject obj = new JSONObject();
obj.put("username", "良好");
obj.put("email", email);
obj.put("password", password);

(JSONObject)JSONSerializer.toJSON(yourNameValue pair);

你可以在这里找到它的Api http://json-lib.sourceforge.net/apidocs/net/sf/json/JSONObject.html