您好,我是使用 BlueJ 的 Java 新手。我有一个 csv 文件,其中包含表格排列中的大量数据。我试图找到一种方法来获取这些信息并找出第一行中有多少逗号分隔值,然后不管行将每个逗号分隔值放入一个数组中。
有人对如何做到这一点有任何建议吗?
在此先感谢,
哈利。
由于需要支持引用值,CSV 解析可能会很棘手。我建议不要编写自己的 CSV 解析器,而是使用现有的库,例如http://opencsv.sourceforge.net/。
您可以使用 Scanner 文件来读取文件的每一行,类似于:
// create a File object by giving the filepath
File file = new File("C:\\data.csv");
try {
// Create a new scanner class that will read the file
Scanner scanner = new Scanner(file);
// while the file has lines to read
while (scanner.hasNextLine()) {
// read the line to a string
String line = scanner.nextLine();
// do what you need with that line
}
// catch the exception if no file can be found
} catch (FileNotFoundException e) {
e.printStackTrace();
}