Java OpenCSV由管道限制拆分

时间:2017-05-18 00:52:53

标签: java opencsv delimited

使用逗号分割从文件读取时遇到问题。我可以这样读取文件:

CSVReader reader = new CSVReader(new FileReader(FileName), '|' , '"' , 0);

然后,当我想获得个人价值时,我可以这样阅读:

String[] record = rowString.split(","); 

问题当然是逗号不是读取文件最可靠的方法。有没有办法按照这样的管道分割字符串?:

String[] record = rowString.split("\\|"); 

这就是我阅读这些内容的方法,它可能在我需要进行此类调整的代码中?

 for(String[] row : allRows){ 
   String rowString = Arrays.toString(row).toString(); 
   String[] record = rowString.split(","); 
 }

谢谢。

1 个答案:

答案 0 :(得分:0)

我不知道这是否能回答问题,但就我而言,这可以解决问题:

val reader: Reader = Files.newBufferedReader(path)

    val csvToBean = CsvToBeanBuilder<MyCsvSchema>(reader)
        .withType(MyCsvSchema::class.java)
        .withSeparator('|')
        .withIgnoreLeadingWhiteSpace(true)
        .build()

    val list = csvToBean.parse()

这是科特林代码