1. 程式人生 > 其它 >HuTool工具包操作csv檔案

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; }

執行結果