加载csv文件

时间:2014-01-19 10:49:42

标签: java csv load filechooser

我必须在NetBeans中创建一个程序,将4个.csv文件加载到表中,并让您像简单的数据库一样管理它们。但我不完全确定如何开始。例如,如何通过jFileChooser打开文件,以便我甚至可以开始对它们进行操作?现在我所做的一切都是文本形成的,所以我需要一些帮助。

3 个答案:

答案 0 :(得分:0)

我建议你看看Spring批处理模块。你需要的是批量处理文件

春季批次包含以下内容

  1. 项目阅读器:Spring支持csvFileReader,它将逐行读取csv文件的内容
  2. 项目处理器:如果我们需要在读取线上执行任何业务逻辑,读取器读取的行将被发送到处理器。如果我们直接想要将行保存到DB,我们可以跳过处理器
  3. Item Writer:用于将读取行写入DB。您可以使用hibernate项目编写器或jdbc项目编写器来实现相同的目的。
  4. 您可以在此处查看:Spring Batch docs

答案 1 :(得分:0)

将问题分解为更简单的部分:

1)打开文本文件。

2)逐行阅读文本文件的内容。

3)将文本文件的行解析为CSV数据。

注意步骤2)如果" line" CSV包含嵌入在数据中的换行符。可能最好从一个简单的CSV文件开始,其中一行CSV等于文件的一行。

你应该能够做1)和2)。实施3)并不困难,但你需要仔细思考。从简单的数据开始(没有逗号的嵌入式引号),并确保在使用嵌入式引号,逗号和可能的换行符转移到更复杂的数据之前,您可以正常工作。

简单:"你好",3," 123","世界!"

复杂:"你好,世界!",3 ,," 123","他说,\"你好,世界!\&#34 ;"

答案 2 :(得分:0)

您可以使用 QuickOCM 之类的内容。它非常易于使用。只需创建一个等同于CSV文件中的行的类。它将读取文件,转换为对象列表。现在,您可以轻松地对此对象执行任何操作,使用ORM保存到DB甚至是vanilla JDBC。

您可以在此处查看用法: http://mkhanal.github.io/quickocm/

    Input : InputStream
    Output : Calls a handler per line in CSV.
    Identifies data types like String, BigDecimal, int, etc.

maven:

    groupId = io.github.mkhanal
    artifactId = quickocm
    version = 1.0