用Java创建一个JSON对象数组

时间:2012-02-25 09:37:23

标签: java json

我有一个包含10列和多行的CSV文件。我想将每一行存储在JSON对象中。例如,文件如下所示:

Name, Age, Address..........and other columns
ABCD, 23 , HOME.............and other columns

所以我希望它作为{"Name":"ABC" ,"Age":"23", "Address":"HOME"}

存储在JSON对象中

现在,由于会有多行,如何创建一个JSON对象数组并将每一行存储在一个对象中?如何从JSON对象中检索或打印每一行?

非常感谢。

2 个答案:

答案 0 :(得分:5)

JSON对象应该创建如下内容: -

{'UserDetails': [{'Name':'ABC', 'Age':'44', 'Address':'HOME'}, 
                 {'Name':'DEF','Age':'23', 'Address':'HOME'}]
                 .....
                 .....
}

要检索: -

JSONObject userDet = new JSONObject(user_info);
JSONArray userDetJson = userDet.getJSONArray("UserDetails");

请参阅更多信息Convert a JSON string to object in Java?Creating & Parsing JSON data with Java Servlet/Struts/JSP JSON-lib: Snippets

答案 1 :(得分:1)

创建将包含10个参数的对象

public class LineObject implements Serializable {
   private String name;
   private int age;
   private String address;
   //...
   // get,set,equals,hashcode
}

然后解析CSV文件,每行保存到LineObject。通过解析整个文件,您将获得List<LineObject>。然后使用例如将其序列化为JSON。 Jackson JSON processor

要从JSON获取对象,请再次使用Jackson JSON处理器进行反序列化。