java buffered_Java BufferedReader mark()方法

Java BufferedReader mark()方法

java.io.BufferedReader.mark(int) 用于标记流中的当前位置。调用reset()将重新定位流。

1 语法

public void mark(int readAheadLimit)

2 参数

readAheadLimit:保留标记时要读取的字符数。

3 返回值

4 示例

package com.yiidian;

/**

* 一点教程网: http://www.yiidian.com

*/

/**

* java.io.BufferedReader.mark(int)方法的例子

*/

import java.io.BufferedReader;

import java.io.FileInputStream;

import java.io.InputStream;

import java.io.InputStreamReader;

public class Demo {

public static void main(String[] args) throws Exception {

InputStream is = null;

InputStreamReader isr = null;

BufferedReader br = null;

try {

// open input stream test.txt for reading purpose.

is = new FileInputStream("d:/test.txt");

// create new input stream reader

isr = new InputStreamReader(is);

// create new buffered reader

br = new BufferedReader(isr);

// reads and prints BufferedReader

System.out.println((char)br.read());

System.out.println((char)br.read());

// mark invoked at this position

br.mark(26);

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(is!=null)

is.close();

if(isr!=null)

isr.close();

if(br!=null)

br.close();

}

}

}

假设test.txt内容如下:

ABCDE

输出结果为:

A

B

mark() invoked

C

D

reset() invoked

C

D

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值