小編給大家分享一下Java中FileInputStream指的是什么,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
FileInputStream是從文件系統(tǒng)中的文件中獲取字節(jié),至于什么文件,取決于主機環(huán)境,F(xiàn)ileInputStream用于讀取原始字節(jié)流,如圖像數(shù)據(jù),假如想要讀取字符類型流,請使用FileReader。
FileInputStream是繼承于InputStream,首先FileInputStream有三個構(gòu)造函數(shù);分別是
FileInputStream(File file) // 構(gòu)造函數(shù)1:創(chuàng)建“File對象”對應(yīng)的“文件輸入流”
FileInputStream(FileDescriptor fd) // 構(gòu)造函數(shù)2:創(chuàng)建“文件描述符”對應(yīng)的“文件輸入流”
FileInputStream(String path) // 構(gòu)造函數(shù)3:創(chuàng)建“文件(路徑為path)”對應(yīng)的“文件輸入流”
用法:
總結(jié):通過這三種構(gòu)造函數(shù)可以FileInputStream(FileDescriptor fd)是和通過構(gòu)造函數(shù)1和構(gòu)造函數(shù)3獲得的實例是同一個實例
public int read() //從此輸入流中讀取一個數(shù)據(jù)字節(jié)
public int read(byte b[]) //從此輸入流中讀取多個字節(jié)到byte數(shù)組中
public int read(byte b[], int off, int len) //從此輸入流中讀取最多l(xiāng)en個字節(jié)到byte數(shù)組中
測試read()
代碼實現(xiàn)中很簡單,一個try中調(diào)用本地native的read0()方法,直接從文件輸入流中讀取一個字節(jié)
測試read(byte b[])
代碼實現(xiàn)也是比較簡單的,也是一個try中調(diào)用本地native的readBytes()方法,直接從文件輸入流中讀取最多b.length個字節(jié)到byte數(shù)組b中
測試 read(byte b[], int off, int len)
代碼實現(xiàn)和 int read(byte b[])方法 一樣,直接從文件輸入流中讀取最多l(xiāng)en個字節(jié)到byte數(shù)組b中。
int available() // 返回“剩余的可讀取的字節(jié)數(shù)”或者“skip的字節(jié)數(shù)” 一個本地的方法
根據(jù)這個方法,可以有效的創(chuàng)建byte[]數(shù)組實例,實現(xiàn)大化利用內(nèi)存空間,在Java的世界里,一個中文占3個字節(jié),一個中文標題符號,同樣也是占有3個字節(jié)。
long skip(long byteCount) // 跳過byteCount個字節(jié) 本地方法
void close()// 關(guān)閉“文件輸入流”
看完了這篇文章,相信你對Java中FileInputStream指的是什么有了一定的了解,想了解更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
當前標題:Java中FileInputStream指的是什么-創(chuàng)新互聯(lián)
當前地址:http://www.chinadenli.net/article26/pscjg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、虛擬主機、網(wǎng)站維護、網(wǎng)站導(dǎo)航、建站公司、關(guān)鍵詞優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)