Java BufferedReader reset()方法

java.io.BufferedReader.reset() 将流重新定位在此输入流上最后一次调用mark方法的位置。

1 语法

public void reset()

2 参数

3 返回值

4 示例 

package com.yiidian;

/**
 * 一点教程网: http://www.yiidian.com
 */
/**
 * java.io.BufferedReader.reset()方法的例子
 */
import java.io.BufferedReader;
import java.io.StringReader;

public class Demo {
    public static void main(String[] args) throws Exception {
        String s ="ABCDE";
        StringReader sr = null;
        BufferedReader br = null;

        try {
            sr = new StringReader(s);

            // create new buffered reader
            br = new BufferedReader(sr);

            // reads and prints BufferedReader
            System.out.println((char)br.read());
            System.out.println((char)br.read());

            // mark invoked at this position
            br.mark(0);
            System.out.println("mark() invoked");
            System.out.println((char)br.read());
            System.out.println((char)br.read());

            // reset() repositioned the stream to the mark
            br.reset();
            System.out.println("reset() invoked");
            System.out.println((char)br.read());
            System.out.println((char)br.read());

        } catch (Exception e) {
            // exception occurred.
            e.printStackTrace();
        } finally {
            // releases any system resources associated with the stream
            if(sr!=null)
                sr.close();
            if(br!=null)
                br.close();
        }
    }
}

输出结果为:

A
B
mark() invoked
C
D
reset() invoked
C
D

热门文章

优秀文章