Java PushbackReader skip()方法与示例
PushbackReader类skip()方法
skip()方法在java.io包中可用。
skip()方法用于从此PushbackReader流中跳过给定数量的字符,它将阻塞直到存在某些字符输入或发生任何输入/输出错误或到达流末尾。
skip()方法是一种非静态方法,只能通过类对象访问,如果尝试使用类名访问该方法,则会收到错误消息。
skip()方法在跳过数据字节时可能会引发异常。
IOException:遇到任何输入/输出错误时,可能引发此异常。
IllegalArgumentException:当给定参数小于0时,可能引发此异常。
语法:
public long skip(int number);
参数:
intnumber–表示要跳过的字符数。
返回值:
该方法的返回类型很长,它返回跳过的确切字符数。
示例
//Java程序演示示例
//的longskip(intnumber)方法的说明
//PushbackReader-
import java.io.*;
public class SkipOfPBR {
public static void main(String[] args) throws Exception {
Reader r_stm = null;
PushbackReader pb_r = null;
int val = 1;
try {
//实例化Reader和PushbackReader-
r_stm = new StringReader("Java World!!!!");
pb_r = new PushbackReader(r_stm);
for (int i = 0; i < 4; ++i) {
//通过使用read()方法是
//读取int并将其转换为
//字符
char ch = (char) pb_r.read();
System.out.println("ch: " + ch);
//通过使用skip()方法是
//跳过char的给定字节
//pb_r-
long skip = pb_r.skip(val);
System.out.println("pb_r.skip(val): " + skip);
val = val + 1;
}
} catch (Exception ex) {
System.out.println(ex.toString());
} finally {
//借助此块可以
//释放所有链接的必要资源
//与流
if (r_stm != null) {
r_stm.close();
if (pb_r != null) {
pb_r.close();
}
}
}
}
}输出结果
ch: J pb_r.skip(val): 1 ch: v pb_r.skip(val): 2 ch: W pb_r.skip(val): 3 ch: d pb_r.skip(val): 4