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