Reader类mark()方法
- mark() 方法可在
java.io
包。 - mark() 方法用于设置此流中的当前位置。当我们调用 reset() 方法时,它会将流重置为 mark() 方法最近设置的位置。
- mark() 方法是一个非静态方法,它只能通过类对象访问,如果我们尝试使用类名访问方法,那么我们将得到一个错误。
- mark() 方法可能会在标记流时抛出异常。
IOException: 获取任何输入/输出错误或不支持 seek() 方法时可能会抛出此异常。
用法:
public void mark(int r_limit);
参数:
int r_limit
– 表示在标记失效之前可以读取的字符数的限制。
返回值:
该方法的返回类型是void
,它什么都不返回。
例:
// Java program to demonstrate the example
// of void mark(int r_limit) method of Reader
import java.io.*;
public class MarkOfR {
public static void main(String[] args) throws Exception {
Reader r_stm = null;
try {
// Instantiates Reader
r_stm = new StringReader("JavaWorld!!!!");
// By using read() method isto
// read the character from r_stm
char ch1 = (char) r_stm.read();
char ch2 = (char) r_stm.read();
char ch3 = (char) r_stm.read();
System.out.println("ch1:" + ch1);
System.out.println("ch2:" + ch2);
System.out.println("ch3:" + ch3);
// By using mark() method isto
// set the current position in this
// r_stm
System.out.println("r_stm.mark(1):");
r_stm.mark(1);
char ch4 = (char) r_stm.read();
char ch5 = (char) r_stm.read();
System.out.println("ch4:" + ch4);
System.out.println("ch5:" + ch5);
// By using reset() method isto
// reset the stream to the position
// set by the call mark() method
System.out.println("r_stm.reset():");
r_stm.reset();
char ch6 = (char) r_stm.read();
char ch7 = (char) r_stm.read();
char ch8 = (char) r_stm.read();
char ch9 = (char) r_stm.read();
char ch10 = (char) r_stm.read();
char ch11 = (char) r_stm.read();
char ch12 = (char) r_stm.read();
System.out.println("ch4:" + ch6);
System.out.println("ch5:" + ch7);
System.out.println("ch6:" + ch8);
System.out.println("ch7:" + ch9);
System.out.println("ch8:" + ch10);
System.out.println("ch9:" + ch11);
System.out.println("ch10:" + ch12);
} catch (Exception ex) {
System.out.println("Stream Closed Before!!!");
} finally {
// with the help of this block is to
// free all necessary resources linked
// with the stream
if (r_stm != null) {
r_stm.close();
}
}
}
}
输出
ch1:J ch2:a ch3:v r_stm.mark(1): ch4:a ch5:W r_stm.reset(): ch4:a ch5:W ch6:o ch7:r ch8:l ch9:d ch10:!
相关用法
- Java Reader mark(int)用法及代码示例
- Java Reader markSupported()用法及代码示例
- Java Reader read(CharBuffer)用法及代码示例
- Java Reader ready()用法及代码示例
- Java Reader close()用法及代码示例
- Java Reader skip()用法及代码示例
- Java Reader skip(long)用法及代码示例
- Java Reader read(char[])用法及代码示例
- Java Reader read(char[], int, int)用法及代码示例
- Java Reader read()用法及代码示例
- Java Reader reset()用法及代码示例
- Java ResolverStyle valueOf()用法及代码示例
- Java ResourceBundle containsKey()用法及代码示例
- Java ResourceBundle getString()用法及代码示例
- Java ResourceBundle getKeys()用法及代码示例
- Java ReentrantLock lock()用法及代码示例
- Java ResourceBundle clearCache()用法及代码示例
- Java ReentrantLock toString()用法及代码示例
- Java ReentrantLock tryLock()用法及代码示例
- Java ReentrantLock isHeldByCurrentThread()用法及代码示例
注:本文由纯净天空筛选整理自Preeti Jain大神的英文原创作品 Java Reader mark() Method with Example。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。