【发布时间】:2016-06-30 12:05:30
【问题描述】:
我有一个文件,我将其扫描到我的程序中并使用此代码存储在字符串中:
try {
data= new Scanner(new File("file.csv")).useDelimiter("\\Z").next();
} catch (FileNotFoundException e) {
System.out.println("File not found");
}
file.csv 看起来像这样:
"RowA";"RowB"
55;56
57;58
59;60
61;62
现在,我正在尝试提取每个数字并将它们放入 String[] 中,如下所示:
String[] number= data.split(";|\\r?\\n|\"|[a-zA-Z]");
当我像这样打印代码时:
for(int i = 0; i < number.length; i++){
System.out.println("Line: " + number[i]);
}
我得到以下输出:
Line:
Line:
Line:
Line:
Line:
Line:
Line:
Line:
Line:
Line:
Line:
Line:
Line:
Line:
Line: 55
Line: 56
Line: 57
Line: 58
Line: 59
Line: 60
Line: 61
Line: 62
为什么数组中的第一个索引是空白的,如何删除它?
谢谢。
【问题讨论】:
-
为什么不逐行读取并使用“;”分割字符串?
标签: java regex split delimiter