尝试将 csv 文件读入 Java 中的 ArrayList 但元素无意中合并?
Trying to read csv file into ArrayList in Java but elements are unintentionally merging?
我有一个 csv 文件,其中包含我试图放入数组列表的值,但一行的最后一个值与第二行的第一个值合并。
参见:
我有这样的数据,
Account Number,Investment Account,Bank Number,Gender,Balance
2544434, Y, 145556, F,1000
2544578, N, 254309, M, 20000
2544230, N, 150365, F, 500000
到目前为止我的代码是这样的,
public static void main(String[] args) throws FileNotFoundException, IOException {
// TODO code application logic here
List<String> list = new ArrayList<String>();
try {
Scanner sc = new Scanner(new File("data.csv"));
sc.useDelimiter(",");
sc.nextLine();
while(sc.hasNext()) {
list.add(sc.next());
}
System.out.println(list.get(4))
}
输出看起来像这样,
1000
2544578
当我想将它们分开时,它们各自行的最后一个值和第一个值合并为一个。我已经搜索过类似的问题,但找不到任何问题,所以我想知道这里是否有人可以提供帮助。 我希望使用扫描仪模块完成此操作。
在这种情况下,您已经指出新行不会分隔 CSV 格式的每个元素。
要解决此问题,您可以使用 useDelimiter
的重载方法来提供模式,其中分隔符是 或者 逗号后跟 space 或换行符。
一些像这样的正则表达式:
,\W|[\n]
我有一个 csv 文件,其中包含我试图放入数组列表的值,但一行的最后一个值与第二行的第一个值合并。 参见:
我有这样的数据,
Account Number,Investment Account,Bank Number,Gender,Balance
2544434, Y, 145556, F,1000
2544578, N, 254309, M, 20000
2544230, N, 150365, F, 500000
到目前为止我的代码是这样的,
public static void main(String[] args) throws FileNotFoundException, IOException {
// TODO code application logic here
List<String> list = new ArrayList<String>();
try {
Scanner sc = new Scanner(new File("data.csv"));
sc.useDelimiter(",");
sc.nextLine();
while(sc.hasNext()) {
list.add(sc.next());
}
System.out.println(list.get(4))
}
输出看起来像这样,
1000
2544578
当我想将它们分开时,它们各自行的最后一个值和第一个值合并为一个。我已经搜索过类似的问题,但找不到任何问题,所以我想知道这里是否有人可以提供帮助。 我希望使用扫描仪模块完成此操作。
在这种情况下,您已经指出新行不会分隔 CSV 格式的每个元素。
要解决此问题,您可以使用 useDelimiter
的重载方法来提供模式,其中分隔符是 或者 逗号后跟 space 或换行符。
一些像这样的正则表达式:
,\W|[\n]