//自定义字符流缓冲区
public class MyBufferedReader {
private Reader r;
public MyBufferedReader(Reader r) {
super();
this.r = r;
}
private char[] buf =new char[1024];//缓冲数组
private int pos =0;//用于操作数组角标
private int count=0;//用于记录读取个数
public int myRead() throws IOException{
if(count==0){
count =r.read(buf);
pos=0;
}
int ch= buf[pos++];
count--;
if(count<0)
return -1;
return ch;
}
public String myReadLine() throws IOException{
StringBuilder sBuilder =new StringBuilder();
int ch =-1;
while((ch=myRead())!=-1){
if(ch=='\r'){
continue;
}
if(ch=='\n')
return sBuilder.toString();
sBuilder.append((char)ch);
}
if(sBuilder.length()!=0)
return sBuilder.toString();
return null;
}
public void myClose() throws IOException{
r.close();
}
}
自定义字符流缓冲区
最新推荐文章于 2022-01-22 10:56:41 发布