我有一个名为
的班级class Student {
String name;
String age;
}
我有一个返回List对象的方法,如
public List<Student> getList(){
List<Student> li =new ArrayList();
....
li.add(new Student('aaa','12'));
...
return li;
}
我需要将该列表转换为JSONArray,就像这样
[{"name":"sam","age":"12"},{"name":"sri","age":"5"}]
任何人都可以帮我解决这个问题吗?在Advancee ..谢谢。
答案 0 :(得分:17)
您必须在项目中包含jettison
jar并导入所需的类。
JSONObject jObject = new JSONObject();
try
{
JSONArray jArray = new JSONArray();
for (Student student : sudentList)
{
JSONObject studentJSON = new JSONObject();
studentJSON.put("name", student.getName());
studentJSON.put("age", student.getAge());
jArray.put(studentJSON);
}
jObject.put("StudentList", jArray);
} catch (JSONException jse) {
jse.printStacktrace();
}
答案 1 :(得分:4)
我认为您无需下载jettison jar文件。
使用JSONArray
和JSONObject
,您可以轻松地将该列表转换为JSON对象,如@Juniad answer
答案 2 :(得分:1)
答案 3 :(得分:1)
json-lib可能是您正在寻找的库。你可以找到使用的{1}}的som例子。
答案 4 :(得分:1)
如果要直接将Object映射到json或想将json转换为object,可以使用GSON库。这将为您提供更多的灵活性和控制力。
下载链接 - http://code.google.com/p/google-gson/
教程链接 - http://www.mkyong.com/java/how-do-convert-java-object-to-from-json-format-gson-api/
答案 5 :(得分:0)
创建JSONArray,如下所示。
JSONArray jsArray = new JSONArray(arrayList);