【发布时间】:2018-08-20 12:15:09
【问题描述】:
我有一个场景,我必须解析来自不同来源的 CSV 文件,解析代码非常简单明了。
String csvFile = "/Users/csv/country.csv";
String line = "";
String cvsSplitBy = ",";
try (BufferedReader br = new BufferedReader(new FileReader(csvFile))) {
while ((line = br.readLine()) != null) {
// use comma as separator
String[] country = line.split(cvsSplitBy);
System.out.println("Country [code= " + country[4] + " , name=" + country[5] + "]");
}
} catch (IOException e) {
e.printStackTrace();
}
我的问题来自 CSV 分隔符,我有很多不同的格式,有时是 ,,有时是 ;
有什么方法可以在解析文件之前确定分隔符
【问题讨论】:
-
我有很多不同的格式。允许设置什么分隔符?逗号、冒号、分号……?
-
@zlakad,是的,逗号,冒号,分号
-
你需要用逗号处理小数分隔符吗? (通常为什么他们在字段 sep.. 中使用逗号以外的其他内容。)
-
所以,有时您的文件应该由
,分割,有时由(分割? AND 每个文件都应该允许出现非分隔符字符吗?我不知道这样的东西是否可以在不链接 file-separator 的情况下进行编码。 -
@agentp,不会是小数点