您当前的位置: 首页 > 学无止境 > 心得笔记 网站首页心得笔记
【第12章:JAVA IO】_回退流
发布时间:2020-12-30 16:18:17编辑:雪饮阅读()
回退流
PushbackInputStream可以对字节数组输入流进行回退控制
比如在读取字节数组时候特殊情况下需要先读取下才能判断是否还有内容,但是此时指针已经偏移了。那么如果输入流可以回退,比如判断还有内容时候手动将指针回退,则不会影响后面的业务,判断仅仅做判断而不能取消耗指针偏移量。
实现如:
import java.io.ByteArrayInputStream;
import java.io.PushbackInputStream;
public class Hello{
public static void main(String args[]) throws Exception{
String str="www.kasumi.com";
//字节数组输入流
ByteArrayInputStream bytes=new ByteArrayInputStream(str.getBytes());
//支持回退的输入流
PushbackInputStream push=new PushbackInputStream(bytes);
System.out.println("读取之后的数据为:");
int temp=0;
while((temp=push.read())!=-1){
if(temp=='.'){
push.unread(temp);
temp=push.read();
System.out.print("(退回"+(char)temp+")");
}
else{
System.out.print((char)temp);
}
}
}
};
关键字词:java,io,回退流