Java Reader
Java Reader是抽象类,用于读取字符流。子类必须实现的唯一方法是read(char[],int,int)和close()。但是,大多数子类会覆盖某些提供更高效率和/或附加功能的方法。
其中一些实现类是BufferedReader,CharArrayReader,FilterReader, InputStreamReader,PipedReader,StringReader
字段
修饰符和类型 |
字段 |
说明 |
protected Object |
lock |
用于同步此流上的操作的对象。 |
构造函数
访问符 |
构造函数 |
说明 |
protected |
Reader() |
它将创建一个新的字符流阅读器,其关键部分将在阅读器本身上进行同步。 |
protected |
Reader(Object lock) |
它将创建一个新的字符流读取器,其关键部分将在给定对象上进行同步。 |
方法
修饰符和类型 |
方法 |
说明 |
abstract void |
close() |
它将关闭流并释放与之关联的所有系统资源。 |
void |
mark(int readAheadLimit) |
它标记了流中的当前位置。 |
boolean |
markSupported() |
它告诉此流是否支持mark()操作。 |
int |
read() |
它读取一个字符。 |
int |
read(char [] cbuf) |
它将字符读入数组。 |
abstract int |
read(char [] cbuf,int off,int len) |
它将字符读入数组的一部分。 |
int |
read(CharBuffer目标) |
它将尝试将字符读入指定的字符缓冲区。 |
boolean |
ready() |
它告诉此流是否已准备好被读取。 |
void |
reset() |
它将重置流。 |
long |
skip(long n) |
它会跳过字符。 |
示例
import java.io.*;
public class ReaderExample {
public static void main(String[] args) {
try {
Reader reader = new FileReader("file.txt");
int data = reader.read();
while (data != -1) {
System.out.print((char) data);
data = reader.read();
}
reader.close();
}
catch (Exception ex) {
System.out.println(ex.getMessage());
}
}
}
file.txt:
输出: