Java中BufferedReader类的read()方法有两种类型:
1. Java中BufferedReader类的read()方法用于从给定的缓冲读取器中读取单个字符。此read()方法一次从缓冲流中读取一个字符,并将其作为整数值返回。
用法:
public int read() throws IOException
覆盖:覆盖Reader类的read()方法。
参数:此方法不接受任何参数。
返回值:此方法以整数形式返回此方法读取的字符。如果缓冲的流已经结束并且没有要读取的字符,则此方法返回-1。
异常:如果发生I /O错误,则此方法将引发IOException。
以下示例程序旨在说明IO包中BufferedReader类中的read()方法:
程序:假设存在文件“c:/demo.txt”。
// Java program to illustrate
// BufferedReader read() method
import java.io.*;
public class GFG {
public static void main(String[] args)
{
// Read the stream 'demo.txt'
// containing text "GEEKSFORGEEKS"
FileReader fileReader
= new FileReader(
"c:/demo.txt");
// Convert fileReader to
// bufferedReader
BufferedReader buffReader
= new BufferedReader(
fileReader);
while (buffReader.ready()) {
// Read and print characters one by one
// by converting into character
System.out.println("Char:"
+ (char)buffReader.read());
}
}
}
2. Java中BufferedReader类的read(char [],int,int)方法用于读取特定数组一部分中的字符。
总合同:
此read()方法的总协定如下:
- 它通过一次又一次地调用主流的read()方法来读取最大可能的字符。
- 它一直持续到读取指定数量的字符或文件结束或ready()方法返回false为止。
指定者:该方法由Reader类的read()方法指定。
用法:
public int read(char[] cbuf, int offset, int length) throws IOException
参数:此方法接受三个参数:
- cbuf-它代表目标缓冲区。
- offset-它代表存储字符的起点。
- length-它表示要读取的最大字符数。
返回值:此方法返回此方法读取的字符数。如果缓冲的流已经结束并且没有要读取的字符,则此方法返回-1。
异常:如果发生I /O错误,则此方法将引发IOException。
以下示例程序旨在说明IO包中BufferedReader类中的read(char,int,int)方法:
程序:假设存在文件“c:/demo.txt”。
// Java program to illustrate
// BufferedReader read(char, int, int) method
import java.io.*;
public class GFG {
public static void main(String[] args)
{
// Read the stream 'demo.txt'
// containing text "GEEKSFORGEEKS"
FileReader fileReader
= new FileReader(
"c:/demo.txt");
// Convert fileReader to
// bufferedReader
BufferedReader buffReader
= new BufferedReader(
fileReader);
// Create a character array
char[] cbuf = new char[13];
// Initialize and declare
// offset and length
int offset = 2;
int length = 5;
// Calling read() method
// on buffer reader
System.out.println(
"Total number of characters read:"
+ buffReader.read(
cbuf, offset, length));
// For each char in cbuf
for (char c:cbuf) {
if (c == (char)0)
c = '-';
System.out.print((char)c);
}
}
}
参考文献:
https://docs.oracle.com/javase/10/docs/api/java/io/BufferedReader.html#read()
https://docs.oracle.com/javase/10/docs/api/java/io/BufferedReader.html#read(char%5B%5D, int, int)
相关用法
- Java BufferedReader ready()用法及代码示例
- Java BufferedReader mark()用法及代码示例
- Java BufferedReader readLine()用法及代码示例
- Java BufferedReader close()用法及代码示例
- Java BufferedReader reset()用法及代码示例
- Java BufferedReader markSupported()用法及代码示例
- Java BufferedReader skip(long)用法及代码示例
- Java CharArrayReader read()用法及代码示例
- Java ObjectInputStream read()用法及代码示例
- Java Reader read()用法及代码示例
- Java PushbackReader read()用法及代码示例
- Java BufferedInputStream read()用法及代码示例
- Java PushbackInputStream read()用法及代码示例
- Java StringReader read()用法及代码示例
- Java ByteArrayInputStream read()用法及代码示例
- Java DataInputStream read()用法及代码示例
- Java StringReader read(CharBuffer)用法及代码示例
- Java StringReader read(char[])用法及代码示例
- Java CharArrayReader read(char[])用法及代码示例
- Java CharArrayReader read(char[], int, int)用法及代码示例
注:本文由纯净天空筛选整理自pp_pankaj大神的英文原创作品 BufferedReader read() method in Java with Examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。