在 java 中解析 csv 文件时出现在单独行中的单词

Words coming up in individual lines when parsing csv file in java

我正在尝试解析 java 中的 csv 文件,但 运行 遇到了问题。当我尝试像这样拆分 csv 时:

public static void main(String[] args) {
    String nameOfFile = "KingstonNorthWard2016Distribution.csv";
    File file = new File(nameOfFile);
    try {
        Scanner inputStream = new Scanner(file);
            while (inputStream.hasNext()){
            String data = inputStream.next();
            String[] values = data.split(",");
            System.out.println(Arrays.toString(values));
        }
        inputStream.close();

    } catch (FileNotFoundException e) {
        e.printStackTrace();
    }

}

我的主机returns这个:

[Distribution]
[Report]
[]
[Print]
[Date/Time:]
[31/10/2016]
[07:27:10PM]
[Bayside]
[City]
[Council]
[2016]

尽管我的 csv 看起来像这样:

Distribution Report                               ,,,,,,,,,,,,,,,,,,,,,,,,,,
Print Date/Time: 31/10/2016 07:27:10PM,,,,,,,,,,,,,,,,,,,,,,,,,,
Bayside City Council 2016,,,,,,,,,,,,,,,,,,,,,,,,,,
Central Ward,,,,,,,,,,,,,,,,,,,,,,,,,,

我不明白的是为什么我的控制台看起来不像这样:

[Distribution report]
[Print Date/Time: 31/10/2016 07:27:10PM]
[Bayside City Council 2016]
[Central Ward]

如果有人能提供帮助那就太好了。为了加分,csv 稍后会继续列出 "Smith, John" 之类的名称,因此如果我的拆分需要更改,请记住这一点。提前致谢。

hasNextnext 遍历单词,你想要 hasNextLinenextLine.

至于包含您的分隔符的字段,我们必须查看您数据集中的示例,以尝试查看是否有我们可以定义的规则显示分隔符可以被 split.