public class FileInputStreamextends InputStream
FileInputStream
從文件系統中的某個文件中獲得輸入字節。哪些文件可用取決於主機環境。
FileInputStream
用於讀取諸如圖像數據之類的原始字節流。要讀取字符流,請考慮使用 FileReader
。
read
public int read(byte[] b, int off, int len) throws IOException
- 從此輸入流中將最多
len
個字節的數據讀入一個 byte 數組中。如果len
不爲 0,則在輸入可用之前,該方法將阻塞;否則,不讀取任何字節並返回0
。 -
- 覆蓋:
- 類
InputStream
中的read
-
- 參數:
b
- 存儲讀取數據的緩衝區。off
- 目標數組b
中的起始偏移量。len
- 讀取的最大字節數。- 返回:
- 讀入緩衝區的字節總數,如果因爲已經到達文件末尾而沒有更多的數據,則返回
-1
。 - 拋出:
NullPointerException
- 如果b
爲null
。IndexOutOfBoundsException
- 如果off
爲負、len
爲負,或者len
大於b.length - off
IOException
- 如果發生 I/O 錯誤。
public FileInputStream(File file) throws FileNotFoundException
- 通過打開一個到實際文件的連接來創建一個
FileInputStream
,該文件通過文件系統中的File
對象file
指定。創建一個新FileDescriptor
對象來表示此文件連接。首先,如果有安全管理器,則用
file
參數表示的路徑作爲參數調用其checkRead
方法。如果指定文件不存在,或者它是一個目錄,而不是一個常規文件,抑或因爲其他某些原因而無法打開進行讀取,則拋出
FileNotFoundException
。- 參數:
file
- 爲了進行讀取而打開的文件。- 拋出:
FileNotFoundException
- 如果該文件不存在,或者它是一個目錄,而不是一個常規文件,抑或因爲其他某些原因而無法打開進行讀取。SecurityException
- 如果存在安全管理器,且其checkRead
方法拒絕對文件進行讀取訪問。