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

时间:2016-03-01 07:21:49

标签: java csv

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

1 个答案:

答案 0 :(得分:1)

使用univocity-parsers解决它

        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