我有一个CSV文件(excel),其中每个数据都可以像excel一样在单元格中使用。我使用Apache CSV来解析excel类型的csv。在解析数据时,我的每个字符之间都被空字符分隔开。这个CSV文件来自不同的来源但是当我复制相同的excel csv文件数据并手动制作excel csv文件时,我的下面的代码能够获得所需的输出。
我的代码:
InputStream is =null;
Reader in =null;
is = new ByteArrayInputStream(excelCSVFile);
in = new InputStreamReader(is);
CSVParser parser = new CSVParser(in, CSVFormat.EXCEL.withHeader("EMPLOYEE_ID","NAME","DOJ",
"MOBILE_NO").withSkipHeaderRecord(true).withTrim(true));
List<CSVRecord> records = parser.getRecords();
for (CSVRecord record : records) {
System.out.println("Employee Id::"+record.get("EMPLOYEE_ID"));
System.out.println("Employee Name::"+record.get("NAME"));
}
当我检查空白字符的ASCII值时,我得到&#39; 0&#39; ,因为值表示空字符。
答案 0 :(得分:0)
is = new FileInputStream(excelCSVFile);
而不是
is = new ByteArrayInputStream(excelCSVFile);
另请注意,这些字段区分大小写。