1.引入jar
compile group: 'org.apache.poi', name: 'poi', version: '4.0.1' compile group: 'org.apache.poi', name: 'poi-ooxml', version: '4.0.1'
2.假设csv的格式如下所示
3.转换代码如下所示
public List getCsvData(){
Map<String, String> mapping = new
HashMap<String, String>();
mapping.put("s_city_id", "s_city_id");
mapping.put("s_city", "s_city");
mapping.put("s_lat", "s_lat");
mapping.put("s_lon", "s_lon");
mapping.put("s_pop", "s_pop");
mapping.put("s_country", "s_country");
mapping.put("s_Volume", "s_Volume");
mapping.put("e_city_id", "e_city_id");
mapping.put("e_City", "e_City");
mapping.put("e_lat", "e_lat");
mapping.put("e_lon", "e_lon");
mapping.put("e_pop", "e_pop");
mapping.put("e_country", "e_country");
mapping.put("e_vol", "e_vol");
HeaderColumnNameTranslateMappingStrategy<CsvData> strategy =
new HeaderColumnNameTranslateMappingStrategy<CsvData>();
strategy.setType(CsvData.class);
strategy.setColumnMapping(mapping);
CSVReader csvReader = null;
ClassLoader classLoader = getClass().getClassLoader();
try {
csvReader = new CSVReader(new FileReader
(classLoader.getResource("1.csv").getFile()));
}
catch (FileNotFoundException e) {
e.printStackTrace();
}
CsvToBean csvToBean = new CsvToBean();
List<CsvData> list = csvToBean.parse(strategy, csvReader);
return list;
}
4.CsvData是对应的java bean,属性如下所示