你好我是使用BlueJ的Java中的新手。我有一个csv文件,其中包含一个表格中的数据加载。我试图找到一种方法来获取这些信息,并找出第一行中有多少逗号分隔值,然后不管行将每个逗号分隔值放入数组中。Java,将CSV的每一行变成一个字符串
有没有人有任何建议如何做到这一点?
在此先感谢,
哈里。
你好我是使用BlueJ的Java中的新手。我有一个csv文件,其中包含一个表格中的数据加载。我试图找到一种方法来获取这些信息,并找出第一行中有多少逗号分隔值,然后不管行将每个逗号分隔值放入数组中。Java,将CSV的每一行变成一个字符串
有没有人有任何建议如何做到这一点?
在此先感谢,
哈里。
由于需要支持引用值,CSV解析可能会非常棘手。我建议不要编写自己的CSV解析器,而要使用现有的库,如http://opencsv.sourceforge.net/。
在网站上的数组似乎没有任何东西,无论如何。 – user1843403
@ user1843403有趣的你应该说,因为我发现它[在5秒内](http://opencsv.sourceforge.net/#how-to-read)。 “阅读和写作”一节中的第一个主题。 –
哦,我认为阅读和写作部分只是访问它并写入一个csv,而不是访问它并写入java。但它只显示如何将每行放入数组中,而不是每个值。它确实有一些关于如何跳过阅读第一行很有用,所以这很好,谢谢。 – user1843403
您可以使用扫描仪文件,读取文件的每一行,类似于:
// 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();
}
[你尝试过什么?](http://whathaveyoutried.com/) – jlordo
我不能尝试任何事情,因为我不把甚至只是一个字符串所需的代码知道成阵列。 – user1843403
'String [] foo = new String [1]; foo [0] =“bar”;'这是基本的Java。 – jlordo