自定义一个缓冲区的大小


/*
 * 自定义缓冲区,
 */
import java.io.IOException;
import java.io.InputStream;


public class MyBufferedInputStreamDemo {
private InputStream in;
private byte[] buf=new byte[1024*4];
private int pos=0,count=0;
public MyBufferedInputStreamDemo(InputStream in) {
super();
this.in = in;
}
//一次读一个字节,从缓冲区(字节数组)获取
public int myRead () {
//通过in对象读取硬盘上的数据,并存储buf中
try {if (count==0) {
count =in.read(buf);
byte b=buf[pos];
count--;
pos++;
return b&255;
}else if (count>0) {
byte b=buf[pos];
count--;
pos++;
return b&0xff;
}
} catch (IOException e) {
e.printStackTrace();
}
return -1;

}
public void  myClose() {
try {
in.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
发布了141 篇原创文章 · 获赞 11 · 访问量 7万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览