我正在使用Jackson CSV库来读取CSV文件。
我们从文档中获得了流式处理示例:
CsvMapper mapper = new CsvMapper();
mapper.enable(CsvParser.Feature.WRAP_AS_ARRAY);
ObjectReader reader = mapper.readerFor(String[].class);
MappingIterator<String[]> values = reader.readValues("/path/to/file")
这适用于 CSV 文件。 但是,我看不出如何将其配置为使用选项卡而不是逗号作为字段分隔符,以便读取 TSV 文件。 我能找到的唯一列分隔符配置与 CsvSchema 类有关,但没有模式,因为我们不知道文件中有多少列。
使用这个:
CsvSchema schema = mapper.schemaFor(String[].class).withColumnSeparator('t');
ObjectReader reader = mapper.readerFor(String[].class).with(schema);