字符流緩沖區的增強類LineNumberReader之裝飾模式
阿新 • • 發佈:2018-01-25
stack per txt all auto tac 獲得 throw number import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.io.Reader;
import java.io.FileReader;
import java.io.IOException;
import java.io.Reader;
/**
- 模擬類LineNumberReader
- 特點能獲得和設置行號
- @author WangShuang
-
*/
public class Demo {public static void main(String[] args) {
MyLineNumberReader r = null;
try {
FileReader fw = new FileReader("c:\字符流緩沖區.txt");
String buff = null;
while((buff=r.myReadLine())!=null){
System.out.println(r.getMyLineNumber()+":"+buff);
}} catch (Exception e) { throw new RuntimeException("讀取錯誤"); }finally { if(r!=null){ try { r.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
}
}
class MyLineNumberReader extends BufferedReader{
private int myLineNumber;//行號計數器
public MyLineNumberReader(Reader in) {super(in);
}
public String myReadLine() throws IOException{
myLineNumber++;
return super.readLine();
}
public int getMyLineNumber() {
return myLineNumber;
}
public void setMyLineNumber(int myLineNumber) {
}
}
字符流緩沖區的增強類LineNumberReader之裝飾模式