2011-07-28 42 views
0

在如何做到這一點上找不到任何幫助: 我不能在Filreader中使用.substring,而它在讀取第一行後引發異常。在filreader中的java substring而

String line = ""; 
BufferedReader in = new BufferedReader(new FileReader(f)); 
LineNumberReader lnr = new LineNumberReader(in); 
while ((line = lnr.readLine()) != null) { 
    System.out.println(lnr.getLineNumber() + " : " + line.substring(1, 7) +"!"); 
} 
in.close(); 
lnr.close(); 
+0

請爲您要實施的內容添加更好的解釋。你爲什麼使用子字符串?什麼是所需的節目輸出? –

+0

我想按行讀取文件行,如果子字符串==「無論」,那麼將採取具體行動。但子字符串似乎停止了Filereader,這就是整個問題〜@ – Frotty

+0

在@Mauricio所說的之上,拋出什麼異常? – ty1824

回答

2

高興的是,你已經找到了答案,你的問題,另外我想建議呼籲(其中線的長度可變的,預計至少在例)子

if (line.length() > 7) { 
    System.out.println(lnr.getLineNumber() + " : " + line.substring(1, 7) +"!"); 
} 
else { 
    System.err.println("Unexpected line, minimum expected length=7 chars"); 
} 
時添加範圍檢查