描述
這個java.io.BufferedReader.read(char[] cbuf, int off, int len) 方法讀取len字符到指定數組中,從偏移量開始off.此方法通過重複調用底層流的 read 方法來讀取字符。
如果以下情況之一變為真,該方法將停止讀取。
- 已讀取流的指定字符數。
- 如果已到達文件末尾。
- ready 方法返回 False。
聲明
以下是聲明java.io.BufferedReader.read(char[] cbuf, int off, int len)方法。
public int read(char[] cbuf, int off, int len)
參數
cbuf− 目標緩衝區。
off− 開始存儲字符的偏移量。
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**************
相關用法
- Java Java.io.BufferedReader.ready()用法及代碼示例
- Java Java.io.BufferedReader.readline()用法及代碼示例
- Java Java.io.BufferedReader.reset()用法及代碼示例
- Java Java.io.BufferedReader.Close()用法及代碼示例
- Java Java.io.BufferedReader.skip()用法及代碼示例
- Java Java.io.BufferedReader.markSupported()用法及代碼示例
- Java Java.io.BufferedReader.mark()用法及代碼示例
- Java Java.io.BufferedInputStream.close()用法及代碼示例
- Java Java.io.BufferedInputStream.available()用法及代碼示例
- Java Java.io.BufferedWriter.newLine()用法及代碼示例
- Java Java.io.BufferedOutputStream.flush()用法及代碼示例
- Java Java.io.BufferedWriter.close()用法及代碼示例
- Java Java.io.BufferedInputStream.reset()用法及代碼示例
- Java Java.io.BufferedInputStream.read()用法及代碼示例
- Java Java.io.BufferedOutputStream.Write()用法及代碼示例
- Java Java.io.BufferedWriter.flush()用法及代碼示例
- Java Java.io.BufferedInputStream.skip()用法及代碼示例
- Java Java.io.BufferedWriter.write()用法及代碼示例
- Java Java.io.ByteArrayInputStream.reset()用法及代碼示例
- Java Java.io.ByteArrayInputStream.mark()用法及代碼示例
注:本文由純淨天空篩選整理自 Java.io.BufferedReader.read() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。