2015-09-23 28 views
-3

你好,我想寫代碼,我從文件中讀取數據,但我無所適從。我曾經這樣做過,但我從讀取的文件看起來像:Java - 從文件讀取問題

鋁90 80 70

貝基80 85 90

查克70 90 80

德布90 95 90

埃德90 85 90

所以我能夠製作一個程序來讀取名稱作爲字符串,然後是數字,並執行一些令人尷尬的事情,因爲.txt文件被打印出來了。
所以,現在我的教授希望我們再次這樣做,但這一次該文件是一個.op文件,它看起來像這樣http://ksuweb.kennesaw.edu/~bsetzer/2302sp15/extra/data/747812-63813-2013.op
我不知道我是否問這個權利,但我如何編寫代碼從哪裏讀取每一列。我已經嘗試了一些東西,但事實上,頂部有文字把我搞砸了。只是爲了測試,我把它看作是一個字符串,然後打印出來並且工作。那麼你們誰可以解釋一個讓程序讀取數據的好方法嗎?編輯:雅虎爲downvotes。只是試圖尋求幫助,我得到了所有的讚譽。很高興我來到這裏。

+0

讀取整個數據並一次處理每行時出現什麼問題? –

+0

不知道該怎麼做。 – Draco8573

+0

你是用JavaScript還是Java來做這件事?他們不一樣。請刪除其中一個標籤。 – Anders

回答

0

一種方式做到這一點:

try (BufferedReader br = new BufferedReader(new FileReader(file))) { 
     String line; 
     while ((line = br.readLine()) != null) { 
      if(line.contains("STN---")) 
       continue; 
      String [] cols = line.split(" "); 
      // process the columns 
     } 
    } 

你應該添加一個標誌,以避免檢查每行的子字符串。

+0

如何添加標誌? – Draco8573

+0

試過,但我不認爲它喜歡該文件是。op – Draco8573

+0

文件擴展名不重要。 – gidim

1

我不知道我是否問這個問題,但是我該如何編寫代碼,其中 是從哪一列讀取的。

要從每列讀取,請將每行讀取爲一個字符串,然後您現在可以將行分割爲不同的列。從那裏你可以隨心所欲地操作數據。

字符串VAL = 「90的Al 80 70」

val.split ("\\s+");

說明

("\\s+"):這是一個正則表達式模式那分裂了t他使用一個或多個空間的字符串

+0

那聲音的方式來提高我 – Draco8573

+0

也al 90 80 70不是問題它是什麼在鏈接,我不知道如何讀入一個文件。 – Draco8573

+0

你想讓我寫一個程序,說明一個例子嗎? –