自定义缓冲区

来源:互联网 发布:购买网络耗材的请示 编辑:程序博客网 时间:2024/06/05 22:19
import java.io.IOException;import java.io.Reader;/*自定义的缓冲区 * 首先需要有一个数组容器,用read方法将源中的一批数据获取 * 再从数组容器中一个一个的取出,当容器中的数据取完后,再从源中取一次 */public class MyBufferReader {// 首先需要一个数组容器char[] chs = new char[3];// 其次,缓冲区建立时,需要有一个关联的源private Reader fr;int count = 0;int pos = 0;MyBufferReader(Reader fr) {this.fr = fr;}public int myRead() throws IOException {if (count == 0){count = fr.read(chs);pos=0;}if(count<0)return -1;char ch=chs[pos];pos++;count--;return ch;}public String myReadLine() throws IOException{int ch=0;StringBuilder sb=new StringBuilder();while((ch=myRead())!=-1){if(ch=='\r')continue;if(ch=='\n')return sb.toString();sb.append((char)ch);}//if((sb.toString())!=null){//return sb.toString();//}return null;}public void myClose() throws IOException{fr.close();}}

0 0
原创粉丝点击