int read(char cbuf, int off, int len) int read String readLine 描述 java.io.BufferedReader.read(char[] cbuf, int off, int len) 方法读取LEN字符到一个指定的数组,从开始偏移关闭。此方法通过重复调用基础流的read方法来读取字符。 如果以下之一变为真,则该方法停止读取。 已读取指定的流字符数。 如果已到达文件结尾。 准备方法返回False。 声明 以下是java.io.BufferedReader.read(char [] cbuf,int off,int len)方法的声明。 public int read(char[] cbuf, int off, int len) 参数 cbuf - 目标缓冲区。 off - Offset开始存储chracters。 len - 要读取的字符数。 返回值 该方法将字符作为整数返回。如果已到达流的末尾,则该方法返回-1。 异常 IOException − 如果发生I / O错误 实例 以下示例显示了java.io.BufferedReader.read(char [] cbuf,int off,int len)方法的用法。 package com.tutorialspoint; import java.io.BufferedReader; import java.io.FileInputStream; import java.io.InputStream; import java.io.InputStreamReader; public class BufferedReaderDemo { public static void main(String[] args) throws Exception { InputStream is = null; InputStreamReader isr = null; BufferedReader br = null; try { // open input stream test.txt for reading purpose. is = new FileInputStream("c:/test.txt"); // create new input stream reader isr = new InputStreamReader(is); // create new buffered reader br = new BufferedReader(isr); // creates buffer char[] cbuf = new char[is.available()]; // reads characters to buffer, offset 2, len 10 br.read(cbuf, 2, 10); // for each character in the buffer for (char c:cbuf) { // if char is empty if(c == (char)0) { c = '*'; } // prints characters System.out.print(c); } } catch(Exception e) { e.printStackTrace(); } finally { // releases resources associated with the streams if(is!=null) is.close(); if(isr!=null) isr.close(); if(br!=null) br.close(); } } } 假设我们有一个文本文件c:/test.txt,它具有以下内容。此文件将用作示例程序的输入 ABCDEFGHIJKLMNOPQRSTUVWXYZ 让我们编译并运行上面的程序,这将产生以下结果 **ABCDEFGHIJ************** int read String readLine