新聞中心
ByteArrayInputStream

成都創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站建設(shè)、成都做網(wǎng)站、崇州網(wǎng)絡(luò)推廣、微信平臺(tái)小程序開發(fā)、崇州網(wǎng)絡(luò)營(yíng)銷、崇州企業(yè)策劃、崇州品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);成都創(chuàng)新互聯(lián)公司為所有大學(xué)生創(chuàng)業(yè)者提供崇州建站搭建服務(wù),24小時(shí)服務(wù)熱線:18980820575,官方網(wǎng)址:www.cdcxhl.com
java.lang.Object
|---java.io.InputStream
|---|---java.io.ByteArrayInputStream
public class ByteArrayInputStream
extends InputStreamByteArrayInputStream 包含一個(gè)內(nèi)部緩沖區(qū),其中包含可以從流中讀取的字節(jié)。 內(nèi)部計(jì)數(shù)器跟蹤讀取方法提供的下一個(gè)字節(jié)。
關(guān)閉 ByteArrayInputStream 無效。 可以在流關(guān)閉后調(diào)用此類中的方法,而不會(huì)生成 IOException。
Since:
JDK1.0
字段摘要
| 修飾符和類型 | 字段 | 描述 |
|---|---|---|
| protected byte[] | buf | 由流的創(chuàng)建者提供的字節(jié)數(shù)組。 |
| protected int | count | 比輸入流緩沖區(qū)中最后一個(gè)有效字符大一的索引。 |
| protected int | mark | 流中當(dāng)前標(biāo)記的位置。 |
| protected int | pos | 要從輸入流緩沖區(qū)讀取的下一個(gè)字符的索引。 |
構(gòu)造函數(shù)摘要
| 構(gòu)造函數(shù) | 描述 |
|---|---|
| ByteArrayInputStream(byte[] buf) | 創(chuàng)建一個(gè)ByteArrayInputStream,使其使用buf作為其緩沖區(qū)陣列。 |
| ByteArrayInputStream(byte[] buf, int offset, int length) | 創(chuàng)建ByteArrayInputStream,使用buf作為其緩沖區(qū)陣列。 |
方法總結(jié)
| 修飾符和類型 | 方法 | 描述 |
|---|---|---|
| int | available() | 返回可以從該輸入流中讀取(或跳過)的剩余字節(jié)數(shù)。 |
| void | close() | 關(guān)閉一個(gè)ByteArrayInputStream沒有任何效果。 |
| void | mark(int readAheadLimit) | 設(shè)置流中的當(dāng)前標(biāo)記位置。 |
| boolean | markSupported() | 測(cè)試這個(gè)InputStream是否支持mark/reset。 |
| int | read() | 從這個(gè)輸入流中讀取下一個(gè)字節(jié)的數(shù)據(jù)。 |
| int | read(byte[] b, int off, int len) | 從這個(gè)輸入流中讀取最多為len字節(jié)的數(shù)據(jù)到一個(gè)字節(jié)數(shù)組。 |
| void | reset() | 將緩沖區(qū)重置到標(biāo)記位置。 |
| long | skip(long n) | 從這個(gè)輸入流中跳過n個(gè)字節(jié)的輸入。 |
| 從java.io.InputStream類繼承的方法 |
|---|
| read |
| 從java.lang.Object類繼承的方法 |
|---|
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
字段詳細(xì)信息
buf
protected byte[] buf
一個(gè)由流的創(chuàng)建者提供的字節(jié)數(shù)組。buf[0]到buf[count-1]元素是唯一可以從流中讀取的字節(jié);buf[pos]元素是下一個(gè)要讀取的字節(jié)。
count
protected int count
比輸入流緩沖區(qū)中最后一個(gè)有效字符大一的索引。這個(gè)值應(yīng)該總是非負(fù)的,并且不大于buf的長(zhǎng)度。它比可以從輸入流緩沖區(qū)讀取的buf中最后一個(gè)字節(jié)的位置大一。
mark
protected int mark
當(dāng)前在流中標(biāo)記的位置。ByteArrayInputStream對(duì)象在構(gòu)造時(shí)默認(rèn)標(biāo)記在零位置。它們可以通過mark()方法標(biāo)記在緩沖區(qū)的另一個(gè)位置。當(dāng)前的緩沖區(qū)位置被reset()方法設(shè)置為這個(gè)點(diǎn)。
如果沒有設(shè)置標(biāo)記,那么標(biāo)記的值就是傳遞給構(gòu)造函數(shù)的偏移量(如果沒有提供偏移量,則為0)。
Since:
JDK1.1
pos
protected int pos
從輸入流緩沖區(qū)讀取下一個(gè)字符的索引。這個(gè)值應(yīng)該總是非負(fù)的,并且不大于count的值。要從輸入流緩沖區(qū)讀取的下一個(gè)字節(jié)將是buf[pos]。
構(gòu)造函數(shù)詳細(xì)信息
ByteArrayInputStream
public ByteArrayInputStream(byte[] buf)
創(chuàng)建一個(gè)ByteArrayInputStream,使其使用buf作為其緩沖區(qū)陣列。緩沖區(qū)數(shù)組不會(huì)被復(fù)制。pos的初始值是0,count的初始值是buf的長(zhǎng)度。
參數(shù)。
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| buf | 輸入緩沖區(qū)。 |
ByteArrayInputStream
public ByteArrayInputStream(byte[] buf, int offset, int length)
創(chuàng)建ByteArrayInputStream,使用buf作為其緩沖陣列。pos的初始值是offset,count的初始值是offset+length和buf.length的最小值。緩沖區(qū)數(shù)組不被復(fù)制。緩沖區(qū)的標(biāo)記被設(shè)置為指定的偏移量。
參數(shù)。
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| buf | 輸入緩沖區(qū)。 |
| offset | 要讀取的第一個(gè)字節(jié)在緩沖區(qū)的偏移量。 |
| length | 從緩沖區(qū)讀取的最大字節(jié)數(shù)。 |
方法詳情
read
public int read()
從這個(gè)輸入流中讀取下一個(gè)字節(jié)的數(shù)據(jù)。字節(jié)值以0-255范圍內(nèi)的一個(gè)int形式返回。如果因?yàn)橐呀?jīng)到達(dá)流的末端而沒有可用的字節(jié),將返回值-1。
這個(gè)讀取方法不能阻塞。
指定的對(duì)象:
read in class InputStream
返回:
下一個(gè)字節(jié)的數(shù)據(jù),或者如果已經(jīng)到達(dá)了流的末端,則返回-1。
read
public int read(byte[] b, int off, int len)
從這個(gè)輸入流中讀取最多為len字節(jié)的數(shù)據(jù)到一個(gè)字節(jié)數(shù)組。如果pos等于count,則返回-1,表示文件結(jié)束。否則,讀取的字節(jié)數(shù)k等于len和count-pos中較小的那個(gè)。如果k是正數(shù),那么buf[pos]到buf[pos+k-1]的字節(jié)將以System.arraycopy的方式被復(fù)制到b[off]到b[off+k-1]。數(shù)值k被添加到pos中,k被返回。
這個(gè)讀取方法不能阻塞。
重寫。
read 在類InputStream中
參數(shù)。
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| b | 讀取數(shù)據(jù)的緩沖區(qū)。 |
| off | 目的數(shù)組中的起始偏移量 b |
| len | 讀取的最大字節(jié)數(shù)。 |
返回:
讀入緩沖區(qū)的總字節(jié)數(shù),如果沒有更多的數(shù)據(jù),因?yàn)橐呀?jīng)達(dá)到了流的終點(diǎn),則返回-1。
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| NullPointerException | 如果b為空。 |
| IndexOutOfBoundsException | 如果off為負(fù)數(shù),len為負(fù)數(shù),或者len大于b.length - off |
skip
public long skip(long n)
從這個(gè)輸入流中跳過n個(gè)字節(jié)的輸入。如果到了輸入流的末端,可能會(huì)跳過更少的字節(jié)。被跳過的實(shí)際字節(jié)數(shù)k等于n和count-pos中的較小值。k的值被加到pos中,k被返回。
覆蓋。
skip in class InputStream
參數(shù)。
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| n | 要跳過的字節(jié)數(shù)。 |
返回:
實(shí)際跳過的字節(jié)數(shù)。
available
public int available()
返回可以從該輸入流中讀?。ɑ蛱^)的剩余字節(jié)數(shù)。
返回的值是count - pos,即從輸入緩沖區(qū)讀出的剩余字節(jié)數(shù)。
重寫:
在類InputStream中可用
返回:
可以從這個(gè)輸入流中讀?。ɑ蛱^)的剩余字節(jié)數(shù),不存在阻塞問題。
markSupported
public boolean markSupported()
測(cè)試這個(gè)InputStream是否支持mark/reset。ByteArrayInputStream的markSupported方法總是返回true。
重寫:
markSupported in class InputStream
返回:
true 如果這個(gè)流實(shí)例支持mark和reset方法;否則false。
Since:
JDK1.1
mark
public void mark(int readAheadLimit)
設(shè)置流中的當(dāng)前標(biāo)記位置。ByteArrayInputStream對(duì)象在構(gòu)造時(shí)默認(rèn)被標(biāo)記在0的位置。他們可以通過這個(gè)方法在緩沖區(qū)內(nèi)的其他位置進(jìn)行標(biāo)記。
如果沒有設(shè)置標(biāo)記,那么標(biāo)記的值就是傳遞給構(gòu)造函數(shù)的偏移量(如果沒有提供偏移量則為0)。
注意:這個(gè)類的readAheadLimit沒有意義。
重寫:
mark in class InputStream
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| readAheadLimit | 在標(biāo)記位置變得無效之前可以讀取的最大限制字節(jié)數(shù)。 |
Since:
JDK1.1
reset
public void reset()
將緩沖區(qū)重置到標(biāo)記的位置。標(biāo)記的位置是0,除非標(biāo)記了另一個(gè)位置或者在構(gòu)造函數(shù)中指定了一個(gè)偏移。
重述:
reset in class InputStream
close
public void close() throws IOException
關(guān)閉ByteArrayInputStream沒有效果。該類中的方法可以在流關(guān)閉后調(diào)用,而不會(huì)生成IOException。
規(guī)定:
關(guān)閉接口自動(dòng)關(guān)閉
規(guī)定:
close in interface可關(guān)閉
覆蓋:
在類InputStream中關(guān)閉
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果發(fā)生I/O錯(cuò)誤。 |
網(wǎng)頁(yè)名稱:創(chuàng)新互聯(lián)鴻蒙OS教程:鴻蒙OSByteArrayInputStream
網(wǎng)頁(yè)地址:http://www.dlmjj.cn/article/cdsjggd.html


咨詢
建站咨詢
