麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

LineNumberReader提供更好的出錯(cuò)消息

2019-11-18 14:06:33
字體:
供稿:網(wǎng)友

  開發(fā)人員經(jīng)常會(huì)隨手寫一些類來讀入一個(gè)簡(jiǎn)單的配置文件,或者用BufferedReader一行一行地讀入特定格式的數(shù)據(jù)。這些隨手寫成的解析器往往會(huì)提供基本的出錯(cuò)報(bào)告,但有時(shí)候它們會(huì)很難記錄下出錯(cuò)的行號(hào)。幸運(yùn)的是,java的java.io.LineNumberReader類提供了行號(hào)的記錄而不需做任何額外的工作。
java.io.LineNumberReader類是java.io.BufferedReader類的擴(kuò)展,它封裝了處理行號(hào)的額外能力。假設(shè)我們有一個(gè)簡(jiǎn)單的解析器,它的規(guī)則是:每一行都必須以“#”開頭。我們來示范一下LineNumberReader的用法:

public void parseFile(Reader reader) throws IOException {
LineNumberReader in = new LineNumberReader(reader);
String line = "";
while( (line = in.readLine( )) != null ) {
if(line.startsWith("#")) {
// 處理這一行
...
} else {
throw new IOException("第" + in.getLineNumber( ) + "行丟了#號(hào)");
}
}
in.flush( );
in.close( );
}

行號(hào)0的意味著我們還沒開始讀入。假如在一個(gè)程序中我們每次讀入一行,并輸出該行和它的行號(hào),行號(hào)將從1開始。

LineNumberReader中有一個(gè)setLineNumber(int)方法,但它僅僅是個(gè)裝飾物。例如把行號(hào)設(shè)成42并不會(huì)轉(zhuǎn)到第42行;它只是簡(jiǎn)單地把當(dāng)前行的行號(hào)設(shè)成42。下一行的行號(hào)就是43了。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 性生活视频一级 | 精品国产高清一区二区三区 | 日韩美女电影 | 久久人人爽人人爽人人片av高请 | 国产91中文字幕 | 亚洲综合视频在线播放 | 亚洲第一成人久久网站 | 在线成人免费观看视频 | 懂色av懂色aⅴ精彩av | 在线成人av观看 | 久青草免费视频 | 羞羞羞网站| 国产精品免费观在线 | 成人做爰高潮片免费视频韩国 | 日韩一级免费 | 中文字幕在线亚洲精品 | 福利免费观看 | 黄色高清免费 | 欧美 中文字幕 | 九九热精 | 久久免费激情视频 | h色网站免费观看 | 欧美视频一区二区三区在线观看 | 久久精品成人免费国产片桃视频 | 国产精品自拍啪啪 | 国产精品久久久久久久久久尿 | 久草在线观看福利视频 | 天天夜夜草 | 成年性羞羞视频免费观看无限 | 国产一级淫片a级aaa | 久久国产乱子伦精品 | 午夜精品视频在线 | 亚洲一区二区三区在线免费观看 | 久久精品之| 久久骚 | 久久国产一级 | 涩涩操| 亚洲综合视频网站 | 国内精品久久久久影院不卡 | 日本成人在线免费 | 青青国产在线视频 |