Java - 将文本文件读入数据库

时间:2012-12-04 19:10:32

标签: java jdbc file-io

我有一个文本文件列出了一堆教科书(它是一个8mb .txt文件!!)我应该编写脚本来读取文件并将信息写入我们设置的数据库中。每本书都是数据库中的一行。文本文件如下所示:

Book_Title:这里有一些标题
ISBN:一些ISBN


.........................
Book_Title:标题
(等...)

每个书由句点分隔,“键:值”对是冒号前的数据库列名和冒号后存储的值。我该如何阅读信息呢?我尝试使用扫描仪并说明分隔符为“:”,但是有一个字段“Updated_On:... at 10:30:28”..还有其他任何建议吗?

1 个答案:

答案 0 :(得分:2)

我希望以下伪代码足够简单。 8Mb并不是那么多,所以它可以在内存中完成。

  1. 将文件读入字符串
  2. 在记录分隔符上拆分字符串,在您的情况下为“.........................”。
  3. 迭代记录数组,将记录数组中的每个元素拆分为“\ n”,这将为记录数组中的每个元素生成名称/值对的串联数组。
  4. 遍历连接的名称/值对的数组并拆分每个“:”,这将生成名称和值的分隔数组。
  5. 这将是内存饥渴,类似O(3N),但是,对于几场演出下的文件,它应该工作得相当好。

    要将文件读入字符串,您可以使用Apache Commons,FileUtils。 FileUtils JavaDoc