知道CSV文件的分隔符
|
这可能是一个简单的问题,但我找不到令人满意的答案。我正在用Java写一个类,该类需要接收一个.csv文件,该文件在三列中均包含双打。显然.csv文件使用逗号作为分隔符,但是当我尝试使用扫描仪设置它们时,扫描仪什么也找不到。有什么建议吗?
Scanner s = null;
try {
s = new Scanner(source);
//s.useDelimiter(\"[\\\\s,\\r\\n]+\"); //This one works if I am using a .txt file
//s.useDelimiter(\", \\n\"); // This is what I thought would work for a .csv file
...
} catch (FileNotFoundException e) {
System.err.format(\"FileNotFoundException: %s%s\", e);
} catch (IOException e) {
System.err.format(\"IOException: %s%n\", e);
}
输入示例如下:
12.3 11.2 27.0
0.5 97.1 18.3
等等
感谢您的时间!
编辑:固定!找到正确的定界符,并意识到我正在使用hasNextInt()而不是hasNextDouble()。 / facepalm
没有找到相关结果
已邀请:
4 个回复
茂坦湿床够
应该只有五个-最后一个逗号在引号中,不要将其分开。 不要重新发明轮子。有开源库可以处理此行为。 快速的Google搜索产生了http://opencsv.sourceforge.net/,我敢肯定还有其他人。
抽法
然后,
将从CSV返回一个项目。
澳绍能
要么
磐剩
方法2: 作为其他答案建议,使用此: