java.lang.Objectjava.io.InputStream
java.io.FileInputStream
public class FileInputStream
FileInputStream 從文件系統中的某個(gè)文件中獲取輸入字節。哪些文件可用取決于主機環(huán)境。
FileInputStream 用于讀取諸如圖像數據之類(lèi)的原始字節流。要讀取字符流,請考慮使用 FileReader。
File, FileDescriptor, FileOutputStream| 構造方法摘要 | |
|---|---|
FileInputStream(File file)通過(guò)打開(kāi)一個(gè)到實(shí)際文件的連接來(lái)創(chuàng )建一個(gè) FileInputStream,該文件通過(guò)文件系統中的 File 對象 file 指定。 | |
FileInputStream(FileDescriptor fdObj)通過(guò)使用文件描述符 fdObj 創(chuàng )建一個(gè) FileInputStream,該文件描述符表示到文件系統中某個(gè)實(shí)際文件的現有連接。 | |
FileInputStream(String name)通過(guò)打開(kāi)一個(gè)到實(shí)際文件的連接來(lái)創(chuàng )建一個(gè) FileInputStream,該文件通過(guò)文件系統中的路徑名 name 指定。 | |
| 方法摘要 | |
|---|---|
int | available()返回可以不受阻塞地從此文件輸入流中讀取的字節數。 |
void | close()關(guān)閉此文件輸入流并釋放與此流有關(guān)的所有系統資源。 |
protected void | finalize()確保在不再引用文件輸入流時(shí)調用其 close 方法。 |
FileChannel | getChannel()返回與此文件輸入流有關(guān)的惟一 FileChannel 對象。 |
FileDescriptor | getFD()返回表示到文件系統中實(shí)際文件的連接的 FileDescriptor 對象,該文件系統正被此 FileInputStream 使用。 |
int | read()從此輸入流中讀取一個(gè)數據字節。 |
int | read(byte[] b)從此輸入流中將最多 b.length 個(gè)字節的數據讀入一個(gè)字節數組中。 |
int | read(byte[] b, int off, int len)從此輸入流中將最多 len 個(gè)字節的數據讀入一個(gè)字節數組中。 |
long | skip(long n)從輸入流中跳過(guò)并丟棄 n 個(gè)字節的數據。 |
| 從類(lèi) java.io.InputStream 繼承的方法 |
|---|
mark, markSupported, reset |
| 從類(lèi) java.lang.Object 繼承的方法 |
|---|
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| 構造方法詳細信息 |
|---|
public FileInputStream(String name) throws FileNotFoundException
FileInputStream,該文件通過(guò)文件系統中的路徑名 name 指定。創(chuàng )建一個(gè)新 FileDescriptor 對象來(lái)表示此文件連接。首先,如果有安全管理器,則用 name 作為參數調用其 checkRead 方法。
如果指定文件不存在,或者它是一個(gè)目錄,而不是一個(gè)常規文件,抑或因為其他某些原因而無(wú)法打開(kāi)進(jìn)行讀取,則拋出 FileNotFoundException。
name - 與系統有關(guān)的文件名。FileNotFoundException - 如果該文件不存在,或者它是一個(gè)目錄,而不是一個(gè)常規文件,抑或因為其他某些原因而無(wú)法打開(kāi)進(jìn)行讀取。SecurityException - 如果存在安全管理器,且其 checkRead 方法拒絕對文件進(jìn)行讀取訪(fǎng)問(wèn)。SecurityManager.checkRead(java.lang.String)public FileInputStream(File file) throws FileNotFoundException
FileInputStream,該文件通過(guò)文件系統中的 File 對象 file 指定。創(chuàng )建一個(gè)新 FileDescriptor 對象來(lái)表示此文件連接。首先,如果有安全管理器,則用 file 參數表示的路徑作為參數調用其 checkRead 方法。
如果指定文件不存在,或者它是一個(gè)目錄,而不是一個(gè)常規文件,抑或因為其他某些原因而無(wú)法打開(kāi)進(jìn)行讀取,則拋出 FileNotFoundException。
file - 為了進(jìn)行讀取而打開(kāi)的文件。FileNotFoundException - 如果該文件不存在,或者它是一個(gè)目錄,而不是一個(gè)常規文件,抑或因為其他某些原因而無(wú)法打開(kāi)進(jìn)行讀取。SecurityException - 如果存在安全管理器,且其 checkRead 方法拒絕對文件進(jìn)行讀取訪(fǎng)問(wèn)。File.getPath(), SecurityManager.checkRead(java.lang.String)public FileInputStream(FileDescriptor fdObj)
fdObj 創(chuàng )建一個(gè) FileInputStream,該文件描述符表示到文件系統中某個(gè)實(shí)際文件的現有連接。首先,如果有安全管理器,則用文件描述符 fdObj 作為參數調用其 checkRead 方法,以查看它是否可以讀取該文件描述符。如果拒絕對該文件描述符進(jìn)行讀取訪(fǎng)問(wèn),則拋出 SecurityException。
如果 fdObj 為 null,則拋出 NullPointerException。
fdObj - 為了進(jìn)行讀取而打開(kāi)的文件描述符。SecurityException - 如果存在安全管理器,且其 checkRead 方法拒絕對文件描述符進(jìn)行讀取訪(fǎng)問(wèn)SecurityManager.checkRead(java.io.FileDescriptor)| 方法詳細信息 |
|---|
public int read() throws IOException
InputStream 中的 read-1。IOException - 如果發(fā)生 I/O 錯誤。public int read(byte[] b) throws IOException
b.length 個(gè)字節的數據讀入一個(gè)字節數組中。在某些輸入可用之前,此方法將阻塞。
InputStream 中的 readb - 存儲讀取數據的緩沖區。-1。IOException - 如果發(fā)生 I/O 錯誤。InputStream.read(byte[], int, int)public int read(byte[] b, int off, int len) throws IOException
len 個(gè)字節的數據讀入一個(gè)字節數組中。在某些輸入可用之前,此方法將阻塞。
InputStream 中的 readb - 存儲讀取數據的緩沖區。off - 數據的起始偏移量。len - 讀取的最大字節數。-1。IOException - 如果發(fā)生 I/O 錯誤。InputStream.read()public long skip(long n) throws IOException
n 個(gè)字節的數據。出于各種原因,skip 方法最終跳過(guò)的字節數可能更少一些,甚至可能為 0。如果 n 為負,則拋出 IOException,即使 InputStream 超類(lèi)的 skip 方法在這種情況下沒(méi)有執行任何操作。返回實(shí)際跳過(guò)的字節數。
此方法跳過(guò)的字節可能多于底層文件中剩余的字節。這不會(huì )產(chǎn)生異常,并且跳過(guò)的字節數可能包括底層文件的 EOF(文件結束符)之后的一些字節數。如果試圖在跳過(guò)末尾之后讀取流,那么會(huì )返回指示文件末尾的 -1。
InputStream 中的 skipn - 要跳過(guò)的字節數。IOException - 如果 n 為負,或者發(fā)生 I/O 錯誤。public int available() throws IOException
InputStream 中的 availableIOException - 如果發(fā)生 I/O 錯誤。public void close() throws IOException
如果此流有一個(gè)與之關(guān)聯(lián)的通道,則關(guān)閉該通道。
Closeable 中的 closeInputStream 中的 closeIOException - 如果發(fā)生 I/O 錯誤。public final FileDescriptor getFD() throws IOException
FileDescriptor 對象,該文件系統正被此 FileInputStream 使用。
IOException - 如果發(fā)生 I/O 錯誤。FileDescriptorpublic FileChannel getChannel()
FileChannel 對象。 所返回通道的初始 position 將等于到目前為止從文件中讀取的字節數。從此流中讀取的字節會(huì )使通道的位置遞增。顯式地或通過(guò)讀取來(lái)更改通道的位置會(huì )更改此流的文件位置。
protected void finalize() throws IOException
close 方法。
Object 中的 finalizeIOException - 如果發(fā)生 I/O 錯誤。close()聯(lián)系客服