2014-01-19 173 views
0

我必須在NetBeans中創建一個程序,該程序可將4個.csv文件加載到表中,並讓您像管理簡單的數據庫一樣管理它們。但我不完全確定如何開始。例如,如何通過jFileChooser打開文件,以便我可以開始操作它們?因爲現在我所做的一切都是由文本組成的,所以我需要一些幫助。加載csv文件

回答

0

我建議你看看Spring批處理模塊。你需要的是處理文件批處理

彈簧一批由以下

  1. 項目讀者:Spring支持csvFileReader將由線
  2. 項目讀取CSV文件行的conten處理器:如果我們需要在讀取線上執行任何業務邏輯,閱讀器讀取的行將被髮送到處理器。如果我們直接想將行保存到數據庫,我們可以跳過處理器
  3. 項目編寫器:這用於將讀取的行寫入數據庫。您可以使用hibernate項目編寫器或jdbc項目編寫器來實現相同的目標。

你可以在它一看這裏:Spring Batch docs

0

下打破你的問題到簡單的部分:

1)打開一個文本文件。

2)逐行閱讀文本文件的內容。

3)將文本文件的行解析爲CSV數據。

請注意,如果CSV的「行」包含嵌入數據中的換行符,則步驟2)會更加複雜。可能最好從一個簡單的CSV文件開始,其中一行CSV等同於文件的一行。

你應該可以做1)和2)。實現3)並不困難,但你需要非常仔細地考慮事情。從簡單的數據開始(沒有嵌入的逗號引號),並確保在使用嵌入式引號,逗號和可能的換行符移動到更復雜的數據之前,您可以正常工作。

簡單:「你好」,3,「123」,「世界!」

情結: 「你好,世界!」,3日, 「123」, 「他說,\」 你好,世界\ 「」

0

您可以使用類似QuickOCM。它非常容易使用。只需創建一個等同於CSV文件中的行的類。它會讀取文件,轉換成對象列表。現在,您可以輕鬆地使用此對象執行任何操作,使用ORM保存到數據庫或甚至是純粹的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