文件輸入流是一個(gè)從 File
或 FileDescriptor
讀取數(shù)據(jù)的輸入流。
類(lèi) java.io.FileInputStream
類(lèi) java.io.FileInputStream
java.lang.Object
|
+----java.io.InputStream
|
+----java.io.FileInputStream
- public class FileInputStream
- extends InputStream
- 來(lái)自:
- JDK1.0
- 參見(jiàn):
- File, FileDescriptor, FileOutputStream
構(gòu)造子索引
- FileInputStream(File)
- 創(chuàng)建一個(gè)輸入文件流,從指定的
File
對(duì)象讀取數(shù)據(jù)。
- FileInputStream(FileDescriptor)
- 創(chuàng)建一個(gè)輸入文件流,從指定的文件描述器讀取數(shù)據(jù)。
- FileInputStream(String)
- 創(chuàng)建一個(gè)輸入文件流,從指定名稱(chēng)的文件讀取數(shù)據(jù)。
方法索引
- available()
- 返回從當(dāng)前文件輸入流中可無(wú)阻塞讀取的字節(jié)數(shù)。
- close()
- 關(guān)閉當(dāng)前文件輸入流,并釋放與它相關(guān)的任一系統(tǒng)資源。
- finalize()
- 當(dāng)這個(gè)文件輸入流不再有引用時(shí),確保調(diào)用它的
close
方法。
- getFD()
- 返回與當(dāng)前流相關(guān)的不透明的文件描述符。
- read()
- 從當(dāng)前輸入流中讀取一字節(jié)數(shù)據(jù)。
- read(byte[])
- 將當(dāng)前輸入流中
b.length
個(gè)字節(jié)數(shù)據(jù)讀到一個(gè)字節(jié)數(shù)組中。
- read(byte[], int, int)
- 將輸入流中
len
個(gè)字節(jié)數(shù)據(jù)讀入一個(gè)字節(jié)數(shù)組中。
- skip(long)
- 跳過(guò)并刪除輸入流中的
n
字節(jié)數(shù)據(jù)。
構(gòu)造子
FileInputStream
public FileInputStream(String name) throws FileNotFoundException
- 創(chuàng)建一個(gè)輸入文件流,從指定名稱(chēng)的文件讀取數(shù)據(jù)。
- 參數(shù):
- name - 與系統(tǒng)有關(guān)的文件名。
- 拋出:FileNotFoundException
- 如果不能找到此文件。
- 拋出:
SecurityException
- 如果有一個(gè)安全管理器,則用給定的參數(shù)名調(diào)用
checkRead
方法,查看是否允許應(yīng)用程序讀該文件。
- 參見(jiàn):
- checkRead
FileInputStream
public FileInputStream(File file) throws FileNotFoundException
- 創(chuàng)建一個(gè)輸入文件流,從指定的
File
對(duì)象讀取數(shù)據(jù)。
- 參數(shù):
- file - 為讀打開(kāi)的文件。
- 拋出:FileNotFoundException
- 如果不能找到此文件。
- 拋出:
SecurityException
- 如果有一個(gè)安全管理器,則用參數(shù)
File
給定的路徑名調(diào)用
checkRead
方法,查看是否允許此應(yīng)用程序讀該文件。
- 參見(jiàn):
- getPath, checkRead
FileInputStream
public FileInputStream(FileDescriptor fdObj)
- 創(chuàng)建一個(gè)輸入文件流,從指定的文件描述器讀取數(shù)據(jù)。
- 參數(shù):
- fdObj - 為讀打開(kāi)的文件描述符。
- 拋出:
SecurityException
- 如果有一個(gè)安全管理器,則用參數(shù)
File
給定的路徑名調(diào)用
checkRead
方法,查看是否允許此應(yīng)用程序讀該文件。
- 參見(jiàn):
- checkRead
方法
read
public native int read() throws IOException
- 從當(dāng)前輸入流中讀取一字節(jié)數(shù)據(jù)。 如果沒(méi)有輸入數(shù)據(jù)則該方法將阻塞。
- 返回值:
- 數(shù)據(jù)的下一個(gè)字節(jié);若已讀到流尾,則為
-1
。
- 拋出:
IOException
- 如果發(fā)生某個(gè) I/O 錯(cuò)誤。
- 覆蓋:
- 類(lèi)
InputStream 中的 read
read
public int read(byte b[]) throws IOException
- 將當(dāng)前輸入流中
b.length
個(gè)字節(jié)數(shù)據(jù)讀到一個(gè)字節(jié)數(shù)組中。 這個(gè)方法將阻塞直到有輸入數(shù)據(jù)可用。
- 參數(shù):
- b - 讀取數(shù)據(jù)的緩沖區(qū)。
- 返回值:
- 讀到緩存區(qū)的整個(gè)字節(jié)數(shù);如果讀到流尾不再有數(shù)據(jù)可讀則為
-1
。
- 拋出:
IOException
- 如果發(fā)生某個(gè) I/O 錯(cuò)誤。
- 覆蓋:
- 類(lèi) InputStream 中的
read
read
public int read(byte b[],
int off,
int len) throws IOException
- 將輸入流中
len
個(gè)字節(jié)數(shù)據(jù)讀入一個(gè)字節(jié)數(shù)組中。 這個(gè)方法將阻塞直到有輸入數(shù)據(jù)可用。
- 參數(shù):
- b - 讀取數(shù)據(jù)的緩沖區(qū)。
- off - 讀取數(shù)據(jù)的起始偏移。
- len - 讀取的最大字節(jié)數(shù)。
- 返回值:
- 讀到緩存區(qū)的整個(gè)字節(jié)數(shù);如果讀到流尾不再有數(shù)據(jù)可讀則為
-1
。
- 拋出:
IOException
- 如果發(fā)生某個(gè) I/O 錯(cuò)誤。
- 覆蓋:
- 類(lèi) InputStream
中的
read
skip
public native long skip(long n) throws IOException
- 跳過(guò)并刪除輸入流的
n
字節(jié)數(shù)據(jù)。
skip
方法可能因各種原因終止跳過(guò)一些較小的字節(jié)數(shù),可能是零。返回實(shí)際跳過(guò)的字節(jié)數(shù)。
- 參數(shù):
- n - 跳過(guò)的字節(jié)數(shù)。
- 返回值:
- 實(shí)際跳過(guò)的字節(jié)數(shù)。
- 拋出:
IOException
- 如果發(fā)生某個(gè) I/O 錯(cuò)誤。
- 覆蓋:
- 類(lèi) InputStream
中的 skip
available
public native int available() throws IOException
- 返回從當(dāng)前文件輸入流中可無(wú)阻塞讀取的字節(jié)數(shù)。
- 返回值:
- 從當(dāng)前文件輸入流中可無(wú)阻塞讀取的字節(jié)數(shù)。
- 拋出:
IOException
- 如果發(fā)生某個(gè) I/O 錯(cuò)誤。
- 覆蓋:
- 類(lèi)
InputStream 中的
available
close
public native void close() throws IOException
- 關(guān)閉當(dāng)前文件輸入流,并釋放與它相關(guān)的任一系統(tǒng)資源。
- 拋出:
IOException
- 如果發(fā)生某個(gè) I/O 錯(cuò)誤。
- 覆蓋:
- 類(lèi)
InputStream 中的 close
getFD
public final FileDescriptor getFD() throws IOException
- 返回與當(dāng)前流相關(guān)的不透明的文件描述符。
- 返回值:
- 與當(dāng)前流相關(guān)的文件描述符。
- 拋出:
IOException
- 如果發(fā)生某個(gè) I/O 錯(cuò)誤。
- 參見(jiàn):
- FileDescriptor
finalize
protected void finalize() throws IOException
- 當(dāng)這個(gè)文件輸入流不再有引用時(shí),確保調(diào)用它的
close
方法。
- 拋出:
IOException
- 如果發(fā)生某個(gè) I/O 錯(cuò)誤。
- 覆蓋:
- 類(lèi) Object 中的
finalize
- 參見(jiàn):
- close