0

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

4

3 回答 3

0

您可以使用QuickOCM 之类的东西。它非常易于使用。只需创建一个相当于 CSV 文件中的一行的类。它将读取文件,转换为对象列表。现在您可以轻松地对这个对象做任何事情,使用 ORM 保存到 DB 甚至是普通的 JDBC。

你可以在这里查看用法:http: //mkhanal.github.io/quickocm/

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

行家:

    groupId = io.github.mkhanal
    artifactId = quickocm
    version = 1.0
于 2014-01-25T09:19:46.217 回答
0

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

春季批次包括以下内容

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

您可以在这里查看:Spring Batch 文档

于 2014-01-19T11:00:58.110 回答
0

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

1) 打开一个文本文件。

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

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

请注意,如果 CSV 的“行”包含嵌入在数据中的换行符,则步骤 2) 将更加复杂。最好从一个简单的 CSV 文件开始,其中一行 CSV 等于文件的一行。

您应该已经能够做到 1) 和 2)。实施 3) 并不难,但您需要非常仔细地考虑问题。从简单的数据(没有嵌入的逗号引号)开始,并确保在继续使用嵌入的引号、逗号和可能的换行符的更复杂的数据之前,它可以正常工作。

简单:“你好”、3、“123”、“世界!”

复杂:"Hello, World!", 3,, "123", "He said, \"Hello, World!\""

于 2014-01-19T11:10:24.280 回答