我想用Jackson的的CSV data format module解析CSV文件。使用Jackson的CSV數據格式模塊解析CSV文件中的CharConversionException
我試圖對他們的項目主頁給出的示例代碼(https://github.com/FasterXML/jackson-dataformat-csv)
CsvMapper mapper = new CsvMapper();
mapper.enable(CsvParser.Feature.WRAP_AS_ARRAY);
File csvFile = new File("input.csv");
MappingIterator<String[]> it = mapper.reader(String[].class).readValues(csvFile);
while (it.hasNext()) {
String[] row = it.next();
System.out.println(row)
}
這個小的代碼是給我錯誤
Exception in thread "main" java.io.CharConversionException: Invalid UTF-8 start byte 0x92 (at char #269, byte #-1)
at com.fasterxml.jackson.dataformat.csv.impl.UTF8Reader.reportInvalidInitial(UTF8Reader.java:393)
at com.fasterxml.jackson.dataformat.csv.impl.UTF8Reader.read(UTF8Reader.java:245)
at com.fasterxml.jackson.dataformat.csv.impl.CsvReader.loadMore(CsvReader.java:438)
at com.fasterxml.jackson.dataformat.csv.impl.CsvReader.hasMoreInput(CsvReader.java:475)
at com.fasterxml.jackson.dataformat.csv.CsvParser._handleStartDoc(CsvParser.java:461)
at com.fasterxml.jackson.dataformat.csv.CsvParser.nextToken(CsvParser.java:414)
at com.fasterxml.jackson.databind.ObjectReader._bindAndReadValues(ObjectReader.java:1492)
at com.fasterxml.jackson.databind.ObjectReader.readValues(ObjectReader.java:1335)
at com.til.etwealth.etmoney.util.alok.main(alok.java:18)
我能夠使用openCSV
我試圖讀取同一個文件通過互聯網上的這個錯誤找出來,但找不到有用的東西。請有人告訴我缺少什麼?
我相信在我的文件沒有不可打印或特殊字符。我可以使用'openCVS'來讀取我的文件。 – 2015-04-10 10:42:36
如果你有一個觸發這個文件的示例文件,最好在(https://github.com/FasterXML/jackson-dataformat-csv/)上提交一個錯誤報告。問題/)。 – StaxMan 2015-04-10 19:58:45