CSVListReader 从 tsv 文件中断读取,如果输入 tsv 文件有 ' 或"


List<String> list=null;
ICsvListReader listReader = null;
listReader = new CsvListReader(new FileReader(new File(folderPath+"/"+fileName)), CsvPreference.TAB_PREFERENCE);
 while((list=listReader.read())!=null) {
   System.out.println(list.toString());
}

我正在使用org.supercsv.io.ICsvListReader但是如果在tsv输入文件中存在'",则代码会中断。我得到的第 6 个字段不是六个字段,而是null.请告诉我是否需要任何更改或其他用于读取大型 tsv 文件的库。

数据:

data    "city' b    state   country sdsadsd details value

使用univocity解析器解决了它

        TsvParserSettings settings = new TsvParserSettings();
        settings.getFormat().setLineSeparator("n");        
        TsvParser parser = new TsvParser(settings);
        parser.beginParsing(getReader("/examples/example.tsv"));
        String[] row;
        while ((row = parser.parseNext()) != null) {
            println(out, Arrays.toString(row));
        }

您可以参考此链接https://github.com/uniVocity/univocity-parsers/blob/master/src/test/java/com/univocity/parsers/examples/TsvParserExamples.java

最新更新