LineNumberReader类mark()方法
- mark() 方法可在
java.io
包。 - mark() 方法用于设置此 LineNumberReader 流中的当前位置,每当我们调用 reset() 时,它都会将流重置为最近调用 mark() 方法设置的位置。
- mark() 方法是一个非静态方法,它只能通过类对象访问,如果我们尝试使用类名访问方法,那么我们将得到一个错误。
- mark() 方法可能会在标记流时抛出异常。
IOException:当给定的参数无效时,可能会抛出此异常。
用法:
public int mark();
参数:
int r_limit
– 表示在标记失效之前可以读取的字符数的限制。
返回值:
该方法的返回类型是void
,它什么都不返回。
例:
// Java program to demonstrate the example
// of void mark(int r_limit) method of
// LineNumberReader
import java.io.*;
public class MarkOfLNR {
public static void main(String[] args) throws Exception {
FileReader fr_stm = null;
LineNumberReader line_r = null;
int val = 0;
try {
// Instantiates FileReader and LineNumberReader
fr_stm = new FileReader("D:\\includehelp.txt");
line_r = new LineNumberReader(fr_stm);
// By using read() method isto
// read the character from line_r
char ch1 = (char) line_r.read();
char ch2 = (char) line_r.read();
char ch3 = (char) line_r.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
// line_r
System.out.println("line_r.mark(0):");
line_r.mark(0);
char ch4 = (char) line_r.read();
char ch5 = (char) line_r.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("line_r.reset():");
line_r.reset();
char ch6 = (char) line_r.read();
char ch7 = (char) line_r.read();
char ch8 = (char) line_r.read();
char ch9 = (char) line_r.read();
char ch10 = (char) line_r.read();
char ch11 = (char) line_r.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);
} catch (Exception ex) {
System.out.println(ex.toString());
} finally {
// with the help of this block is to
// free all necessary resources linked
// with the stream
if (fr_stm != null) {
fr_stm.close();
if (line_r != null) {
line_r.close();
}
}
}
}
}
输出
ch1:J ch2:A ch3:V line_r.mark(0): ch4:A ch5:W line_r.reset(): ch4:A ch5:W ch6:O ch7:R ch8:L ch9:D
相关用法
- Java LineNumberReader setLineNumber()用法及代码示例
- Java LineNumberReader reset()用法及代码示例
- Java LineNumberReader getLineNumber()用法及代码示例
- Java LineNumberReader readLine()用法及代码示例
- Java LineNumberReader skip()用法及代码示例
- Java LineNumberInputStream reset()用法及代码示例
- Java LineNumberInputStream skip()用法及代码示例
- Java LineNumberInputStream mark()用法及代码示例
- Java LineNumberInputStream available()用法及代码示例
- Java LineNumberInputStream setLineNumber()用法及代码示例
- Java LineNumberInputStream getLineNumber()用法及代码示例
- Java LinkedHashMap keySet()用法及代码示例
- Java LinkedTransferQueue remainingCapacity()用法及代码示例
- Java LinkedBlockingDeque pop()用法及代码示例
- Java LinkedHashSet clone()用法及代码示例
- Java LinkedTransferQueue peek()用法及代码示例
- Java LinkedHashSet toString()用法及代码示例
- Java LinkedHashSet retainAll()用法及代码示例
- Java LinkedBlockingQueue toArray()用法及代码示例
- Java LinkedBlockingDeque takeFirst()用法及代码示例
注:本文由纯净天空筛选整理自Preeti Jain大神的英文原创作品 Java LineNumberReader mark() Method with Example。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。