回退流的基本操作

回退流----JavaIO

回退流的优点是,可以通过回退的方式给用户第二次读入输入流的机会。

回退流的主要方法

回退流的基本操作_第1张图片

回退流案例演示

package chapter_twelve;

import java.io.ByteArrayInputStream;
import java.io.PushbackInputStream;

public class PushInputStreamDemo {
    public static void main(String[] args) throws Exception{
        String string = "www.mldnjava.cn";                  //实例化字符串对象
        PushbackInputStream pushbackInputStream = null;             //声明回退流对象
        ByteArrayInputStream byteArrayInputStream = null;           //声明内存输入流对象

        byteArrayInputStream = new ByteArrayInputStream(string.getBytes());         //实例化内存流对象
        pushbackInputStream = new PushbackInputStream(byteArrayInputStream);        //实例化回退流对象

        System.out.println("读取之后的数据为:");            //准备输出内容
        int temp = 0;
        while ((temp = pushbackInputStream.read()) != -1){      //进行不断读取的方式
            if(temp == '.'){                                //若读取的内容为'.'
                pushbackInputStream.unread(temp);           //将此'.'回退到输入流对象中
                temp = pushbackInputStream.read();              //再次将'.'从输入流中读取出来
                System.out.print("(退回" + (char)temp + ")");         //输出回退的内容
            }else {
                System.out.print((char)temp);               //输出其它字符
            }
        }
    }
}

运行结果

读取之后的数据为:
www(退回.)mldnjava(退回.)cn

你可能感兴趣的:(Java,#,JavaIO)