2013-02-19 31 views
0

當用Java編寫程序並且想要讀取文件時,是否有一種方法是USER可以通過使某個文件的行或字符完全忽略特定的行或字符更多的是「評論」?正如程序員在編程時可以使用'//'或'/ * * /'一樣。正在爲Java讀取文本文件中的註釋

+0

是的,有很多方法。你嘗試過什麼嗎? – jlordo 2013-02-19 16:24:11

+0

您的代碼是讀取文件嗎?如果是這樣,你可以自己實現它。 – Will 2013-02-19 16:24:15

+0

不打印給用戶不足夠嗎? – Grooveek 2013-02-19 16:24:22

回答

0

您可以跳過以特定模式(例如'//'或'#')開始的行。

有一個關於如何通過線這裏閱讀的Java行的文件的例子:http://www.roseindia.net/Java/beginners/java-read-file-line-by-line.shtml

可以更改while循環是這樣的:

while ((strLine = br.readLine()) != null) { 
    if (!strLine.startWith("#")) 
    System.out.println (strLine); 
} 

在這個例子行以「# '將不會被打印。

+0

我想這就近了..謝謝! – xduckxman99x 2013-02-26 21:41:59

+0

您當然可以根據您的需要擴展/定製。如果這有幫助,那麼你可以接受答案:)。 – Henridv 2013-02-27 10:12:40

0

如果是屬性文件格式,並且您使用Properties來讀取它,則可以使用磅字符。否則,不,你需要自己實施一些東西。

my.prop1=val1 
#some comment 
my.prop2=val2 
0

當然。如果程序使用的代碼來完成從文件中讀取行:

BufferedReader reader = 
    new BufferedReader (
     new InputStreamReader (new FileInputStream (inputFile))); 

String line; 
while ((line = reader.readLine()) != null) 
{ 
    if (line.startWith ("#") || line.trim().isEmpty()) 
     continue; // Ignore the line 

    // Process the line 
} 

用戶可以通過磅(「#」)字符爲前綴來紀念一些線路的意見。

0

這取決於你要完成 ,如果你只是想轉換新的文件,那麼你可以使用BufferedReader reader來逐行讀取文件中的行,然後檢查每一行,看它是否符合某些標準, 什麼,採取必要的行動 像if (line.startWith ("#") || line.trim().isEmpty())否則它會更好地使用標準庫來對您的文件執行操作,如壓縮文件,將文件更改爲不同的格式等