新聞中心
SequenceInputStream

java.lang.Object
|---java.io.InputStream
|---|---java.io.SequenceInputStream
public class SequenceInputStream
extends InputStreamSequenceInputStream 表示其他輸入流的邏輯串聯(lián)。 它從輸入流的有序集合開始,從第一個(gè)讀取直到到達(dá)文件末尾,然后從第二個(gè)讀取,依此類推,直到最后一個(gè)包含的輸入流到達(dá)文件末尾。
Since:
JDK1.0
構(gòu)造函數(shù)摘要
| 構(gòu)造函數(shù) | 描述 |
|---|---|
| SequenceInputStream(InputStream s1, InputStream s2) | 通過記住兩個(gè)參數(shù)來初始化一個(gè)新創(chuàng)建的 SequenceInputStream,這兩個(gè)參數(shù)將按順序讀取,首先是 s1,然后是 s2,以提供要從此 SequenceInputStream 讀取的字節(jié)。 |
| SequenceInputStream(Enumeration extends InputStream> e) | 通過記住參數(shù)來初始化新創(chuàng)建的 SequenceInputStream,該參數(shù)必須是一個(gè) Enumeration,它生成運(yùn)行時(shí)類型為 InputStream 的對象。 |
方法總結(jié)
| 修飾符和類型 | 方法 | 描述 |
|---|---|---|
| int | available() | 返回當(dāng)前底層輸入流的下一次調(diào)用方法時(shí)可以從當(dāng)前底層輸入流讀取(或跳過)而不會(huì)阻塞的字節(jié)數(shù)的估計(jì)值。 |
| void | close() | 關(guān)閉此輸入流并釋放與該流關(guān)聯(lián)的所有系統(tǒng)資源。 |
| int | read() | 從此輸入流中讀取數(shù)據(jù)的下一個(gè)字節(jié)。 |
| int | read(byte[] b, int off, int len) | 從此輸入流中讀取最多 len 個(gè)字節(jié)的數(shù)據(jù)到一個(gè)字節(jié)數(shù)組中。 |
| 從類 java.io.InputStream 繼承的方法 |
|---|
| mark, markSupported, read, reset, skip |
| 從類 java.lang.Object 繼承的方法 |
|---|
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
構(gòu)造函數(shù)詳細(xì)信息
SequenceInputStream
public SequenceInputStream(Enumeration extends InputStream> e)
通過記住參數(shù)來初始化新創(chuàng)建的 SequenceInputStream,該參數(shù)必須是一個(gè) Enumeration,它生成運(yùn)行時(shí)類型為 InputStream 的對象。 將讀取枚舉產(chǎn)生的輸入流,以便提供要從此 SequenceInputStream 讀取的字節(jié)。 在枚舉中的每個(gè)輸入流用盡后,通過調(diào)用其 close 方法將其關(guān)閉。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| e | 輸入流的枚舉。 |
SequenceInputStream
public SequenceInputStream(InputStream s1, InputStream s2)
通過記住兩個(gè)參數(shù)來初始化一個(gè)新創(chuàng)建的 SequenceInputStream,這兩個(gè)參數(shù)將按順序讀取,首先是 s1,然后是 s2,以提供要從此 SequenceInputStream 讀取的字節(jié)。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| s1 | 要讀取的第一個(gè)輸入流。 |
| s2 | 要讀取的第二個(gè)輸入流。 |
方法詳情
available
public int available() throws IOException
返回當(dāng)前底層輸入流的下一次調(diào)用方法時(shí)可以從當(dāng)前底層輸入流讀?。ɑ蛱^)而不會(huì)阻塞的字節(jié)數(shù)的估計(jì)值。 下一次調(diào)用可能是同一個(gè)線程或另一個(gè)線程。 單次讀取或跳過這么多字節(jié)不會(huì)阻塞,但可能會(huì)讀取或跳過更少的字節(jié)。
此方法僅調(diào)用當(dāng)前底層輸入流的 available 并返回結(jié)果。
覆蓋:
在類 InputStream 中可用
返回:
估計(jì)可以從當(dāng)前底層輸入流中讀?。ɑ蛱^)而不會(huì)阻塞的字節(jié)數(shù),如果此輸入流已通過調(diào)用其 close() 方法關(guān)閉,則為 0
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果發(fā)生 I/O 錯(cuò)誤。 |
Since:
JDK1.1
read
public int read() throws IOException
從此輸入流中讀取數(shù)據(jù)的下一個(gè)字節(jié)。 字節(jié)作為 int 返回,范圍為 0 到 255。如果由于到達(dá)流的末尾而沒有可用的字節(jié),則返回值 -1。 此方法會(huì)一直阻塞,直到輸入數(shù)據(jù)可用、檢測到流結(jié)束或引發(fā)異常。
此方法嘗試從當(dāng)前子流中讀取一個(gè)字符。 如果它到達(dá)流的末尾,它會(huì)調(diào)用當(dāng)前子流的 close 方法并從下一個(gè)子流開始讀取。
指定者:
讀入類 InputStream
返回:
數(shù)據(jù)的下一個(gè)字節(jié),如果到達(dá)流的末尾,則為 -1。
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果發(fā)生 I/O 錯(cuò)誤。 |
read
public int read(byte[] b, int off, int len) throws IOException
從此輸入流中讀取最多 len 個(gè)字節(jié)的數(shù)據(jù)到一個(gè)字節(jié)數(shù)組中。 如果 len 不為零,則該方法會(huì)阻塞,直到至少有 1 個(gè)字節(jié)的輸入可用; 否則,不讀取任何字節(jié)并返回 0。
SequenceInputStream 的 read 方法嘗試從當(dāng)前子流中讀取數(shù)據(jù)。 如果由于子流到達(dá)流的末尾而導(dǎo)致讀取任何字符失敗,則調(diào)用當(dāng)前子流的close方法并從下一個(gè)子流開始讀取。
覆蓋:
讀入類 InputStream
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| b | 讀取數(shù)據(jù)的緩沖區(qū)。 |
| off | 數(shù)組 b 中寫入數(shù)據(jù)的起始偏移量。 |
| len | 讀取的最大字節(jié)數(shù)。 |
返回:
int 讀取的字節(jié)數(shù)。
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| NullPointerException | 如果 b 為空。 |
| IndexOutOfBoundsException | 如果 off 為負(fù)數(shù),len 為負(fù)數(shù),或者 len 大于 b.length - off |
| IOException | 如果發(fā)生 I/O 錯(cuò)誤。 |
close
public void close() throws IOException
關(guān)閉此輸入流并釋放與該流關(guān)聯(lián)的所有系統(tǒng)資源。 關(guān)閉的 SequenceInputStream 無法執(zhí)行輸入操作,也無法重新打開。
如果此流是從枚舉創(chuàng)建的,則從枚舉中請求所有剩余元素并在 close 方法返回之前關(guān)閉。
指定者:
在接口 AutoCloseable 中關(guān)閉
指定者:
在接口Closeable中關(guān)閉
覆蓋:
在類 InputStream 中關(guān)閉
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果發(fā)生 I/O 錯(cuò)誤。 |
本文題目:創(chuàng)新互聯(lián)鴻蒙OS教程:鴻蒙OSSequenceInputStream
網(wǎng)站網(wǎng)址:http://fisionsoft.com.cn/article/djiisjs.html


咨詢
建站咨詢
