2013-03-12 119 views
-1

我想問一些從1 .txt文件中獲取字符串並從另一個.txt文件獲取其詳細信息的指導。比較2個txt文件

E.G. 文件1有一個學號。 文件2有2名學生的記錄。

FILE1.TXT - 「A000001」

FILE2.TXT
「A000001,FNAME,LNAME,等級,出席」
「B000005,FNAME,LNAME,等級,出席」

是它可能從文件1中取出字符串,檢查它是否與文件2相同,然後顯示如Fname,Lname等的詳細信息?

我該怎麼做呢?

不尋找任何人爲我做這件事,只是想要在正確的方向引導。另一個論壇上的一些非常無益的管理員只是說「自己動手」。

我只想知道進去的方向,所以我可以嘗試並找回你。

感謝您的閱讀,希望您能幫助!

謝謝!

+0

基本上你應該在使用數據庫時使用平面文件。雖然您可以繼續使用平面文件,但爲了便於使用和方便,您應該切換到真實的數據庫。 – 2013-03-12 21:09:46

+0

您必須打開閱讀文件,然後使用contains()方法,您可以檢查另一個文件中的文本。 – Smit 2013-03-12 21:09:52

+0

[你有什麼嘗試](http://www.whathaveyoutried.com)? – 2013-03-12 21:10:24

回答

1

我會按照下列步驟操作:

首先,用BufferedReader讀取這兩個文件。

BufferedReader br = new BufferedReader(new FileReader("file1.txt")), 
       br2 = new BufferedReader(new FileReader("file2.txt")); 

然後,在保持String從第一BufferedReader的值。 然後,我會讀我的第二個BufferedReader的每一行。

String s; 
while((s = br.readLine()) != null) { 

在這個循環中,你會分裂s其分隔符(在這裏,,)。

s.split(","); 

String#split返回與所有在此情況下與,分離的元件的陣列。所以s.split(",")[0];將返回學號。將它與第一行的String進行比較。如果他們是平等的,那麼只需閱讀其他分裂元素,然後在這裏。

+0

感謝您的幫助和評論,我會試一試:)謝謝! – MConnolly 2013-03-12 21:36:27

+0

祝你好運,如果你有其他問題,請不要猶豫:) – Rob 2013-03-12 21:39:00

0

您可以使用BufferedReader從文件中讀取整個字符串。然後,我假設你的東西像「A000001」總是有恆定數量的字母,所以你可以通過File2,用BufferedReader逐個讀取字符串,先切割7個字母(用.substring方法),然後比較(How do I compare strings in Java?)他們與字符串,你從File1讀取。 對不起,我的英文;希望我回答你的問題。