HuTool工具包操作csv文件


CsvUtil是CSV工具类,主要封装了两个方法:

  getReader 用于对CSV文件读取

  getWriter 用于生成CSV文件

1、读取文件

  读取为CsvRow

CsvReader reader = CsvUtil.getReader();
//从文件中读取CSV数据
CsvData data = reader.read(FileUtil.file("test.csv"));
List<CsvRow> rows = data.getRows();
//遍历行
for (CsvRow csvRow : rows) {
    //getRawList返回一个List列表,列表的每一项为CSV中的一个单元格(既逗号分隔部分)
    Console.log(csvRow.getRawList());
}

  读取为Bean列表

CsvReader csvReader = CsvUtil.getReader();
        //使用GBK编码,否则中文出现乱码,
        // 若使用Utf8 可以直接使用ResourceUtil.getUtf8Reader("test2.csv")
        List<BeanDto> rows = csvReader.read(ResourceUtil.getReader("test2.csv", CharsetUtil.CHARSET_GBK), BeanDto.class);
        for (BeanDto bean : rows) {
            System.out.println(bean);
        }

读取为Bean时,第一行是标题,必须与Bean的属性名一致,如果不一致可以使用@Alias("csv文件中名称")注解,该注解作用在属性上,例如

@Data
public class BeanDto {

    @Alias("设备内码")
    private String indexCode;

    @Alias("IP地址")
    private String address;

    @Alias("端口号")
    private Integer port;

    @Alias("设备账号")
    private String userName;


}

 

 

 

执行结果

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM