首页 > Web开发 > 详细

csv转JSON再转Object List的方法

时间:2019-02-10 15:53:40      阅读:228      评论:0      收藏:0      [点我收藏+]
第一步,从.csv文件读取数据,转成JSON格式
 1 import com.fasterxml.jackson.dataformat.csv.CsvMapper;
 2 import com.fasterxml.jackson.dataformat.csv.CsvSchema;
 3 import com.google.gson.Gson;
 4  
 5 public static String readFile(String filename) throws Exception {
 6 
 7         String filetype = filename.substring(filename.lastIndexOf(".") + 1);
 8         String filepath = "src/main/java/"+ filename;
 9         String json = null;
10 
11         if (filetype.equals("csv")) {
12             
13             File input = new File(filepath);
14             CsvSchema csvSchema = CsvSchema.builder().setUseHeader(true).build();
15             CsvMapper csvMapper = new CsvMapper();
16 
17             // Read data from CSV file
18             List<Object> readAll = csvMapper.readerFor(Map.class)
19           .with(csvSchema).readValues(input).readAll();
20             Gson objJson = new Gson();
21             json = objJson.toJson(readAll, List.class);
22         }
23         return json;
24     }
 
第二步,创建Object类
 1 import com.fasterxml.jackson.annotation.JsonProperty;
 2 
 3 public class User {
 4     
 5     @JsonProperty("Userid")
 6     private String Userid;
 7     
 8     @JsonProperty("FirstName")
 9     private String FirstName;
10     
11     @JsonProperty("LastName")
12     private String LastName;
13   
14    public String getUserId() {
15         return Userid;
16     }
17     
18     public String getFirstName() {
19         return FirstName;
20     }
21     
22     public String getLastName() {
23         return LastName;
24     }
25    
26     public void setUserId(String Userid) {
27         this.Userid = Userid;
28     }
29     
30     public void setFirstName(String FirstName) {
31         this.FirstName = FirstName;
32     }
33 
34     public void setLastName(String LastName) {
35         this.LastName = LastName;
36     }
37 }
 
第三步,将JSON字符串转化为Object List
 1 import com.fasterxml.jackson.databind.ObjectMapper;
 2  
 3 public static List<User> jsonToUserEntity(String json) {
 4         ObjectMapper objectMapper = new ObjectMapper();
 5 
 6         try {
 7            return objectMapper.readValue(
 8                    json,
 9            objectMapper.getTypeFactory().constructCollectionType(List.class, User.class)
10             );
11 
12         } catch (IOException e) {
13             e.printStackTrace();
14         }
15         return new ArrayList<User>();
16     }

 

 

 
 

csv转JSON再转Object List的方法

原文:https://www.cnblogs.com/wangclwh/p/10359250.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!