熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Javascript >> 正文

用LineNumberReader 提供更好的出錯消息

2013-11-23 17:56:14  來源: Javascript 

  開發人員常常會隨手寫一些類來讀入一個簡單的配置文件或者用BufferedReader一行一行地讀入特定格式的數據這些隨手寫成的解析器往往會提供基本的出錯報告但有時候它們會很難記錄下出錯的行號幸運的是Java的javaioLineNumberReader類提供了行號的記錄而不需做任何額外的工作
  javaioLineNumberReader類是javaioBufferedReader類的擴展它封裝了處理行號的額外能力假設我們有一個簡單的解析器它的規則是每一行都必須以#開頭我們來示范一下LineNumberReader的用法
  
  public void parseFile(Reader reader) throws IOException {
   LineNumberReader in = new LineNumberReader(reader);
   String line = ;
   while( (line = inreadLine( )) != null ) {
   if(linestartsWith(#)) {
   // 處理這一行
  
   } else {
   throw new IOException( + ingetLineNumber( ) + 行丟了#號);
   }
   }
   inflush( );
   inclose( );
  } 行號的意味著我們還沒開始讀入如果在一個程序中我們每次讀入一行並輸出該行和它的行號行號將從開始
  
  LineNumberReader中有一個setLineNumber(int)方法但它僅僅是個裝飾物例如把行號設成並不會轉到第它只是簡單地把當前行的行號設成下一行的行號就是
  

From:http://tw.wingwit.com/Article/program/Java/Javascript/201311/25386.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.