新聞中心
LineNumberInputStream

java.lang.Object
|---java.io.InputStream
|---|---java.io.FilterInputStream
|---|---|---java.io.LineNumberInputStream
@Deprecated
public class LineNumberInputStream
extends FilterInputStream已棄用。 此類錯誤地假定字節(jié)足以表示字符。 從 JDK 1.1 開始,對字符流進(jìn)行操作的首選方式是通過新的字符流類,其中包括一個用于計算行號的類。
Since:
JDK1.0
字段摘要
| 從類 java.io.FilterInputStream 繼承的字段 |
|---|
| in |
構(gòu)造函數(shù)摘要
| 構(gòu)造函數(shù) | 描述 |
|---|---|
| LineNumberInputStream(InputStream in) | 已棄用。 構(gòu)造一個換行符輸入流,該流從指定的輸入流中讀取其輸入。 |
方法總結(jié)
| 修飾符和類型 | 方法 | 描述 |
|---|---|---|
| int | available() | 已棄用。 返回可以不阻塞地從此輸入流中讀取的字節(jié)數(shù)。 |
| int | getLineNumber() | 已棄用。 返回當(dāng)前行號。 |
| void | mark(int readlimit) | 已棄用。 標(biāo)記此輸入流中的當(dāng)前位置。 |
| int | read() | 已棄用。 從此輸入流中讀取數(shù)據(jù)的下一個字節(jié)。 |
| int | read(byte[] b, int off, int len) | 已棄用。 從此輸入流中讀取最多 len 個字節(jié)的數(shù)據(jù)到一個字節(jié)數(shù)組中。 |
| void | reset() | 已棄用。 將此流重新定位到最后一次在此輸入流上調(diào)用標(biāo)記方法時的位置。 |
| void | setLineNumber(int lineNumber) | 已棄用。 將行號設(shè)置為指定的參數(shù)。 |
| long | skip(long n) | 已棄用。 跳過并丟棄此輸入流中的 n 字節(jié)數(shù)據(jù)。 |
| 從類 java.io.FilterInputStream 繼承的方法 |
|---|
| close, markSupported, read |
| 從類 java.lang.Object 繼承的方法 |
|---|
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
構(gòu)造函數(shù)詳細(xì)信息
LineNumberInputStream
public LineNumberInputStream(InputStream in)
已棄用。
構(gòu)造一個換行符輸入流,該流從指定的輸入流中讀取其輸入。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| in | 底層輸入流。 |
方法詳情
read
public int read() throws IOException
已棄用。
從此輸入流中讀取數(shù)據(jù)的下一個字節(jié)。 值字節(jié)作為 int 返回,范圍為 0 到 255。如果由于到達(dá)流的末尾而沒有可用的字節(jié),則返回值 -1。 此方法會一直阻塞,直到輸入數(shù)據(jù)可用、檢測到流結(jié)束或引發(fā)異常。
LineNumberInputStream 的 read 方法調(diào)用底層輸入流的 read 方法。 它檢查輸入中的回車符和換行符,并根據(jù)需要修改當(dāng)前行號。 回車符或后跟換行符的回車符都轉(zhuǎn)換為單個換行符。
覆蓋:
讀入類 FilterInputStream
返回:
數(shù)據(jù)的下一個字節(jié),如果到達(dá)此流的末尾,則為 -1。
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果發(fā)生 I/O 錯誤。 |
read
public int read(byte[] b, int off, int len) throws IOException
已棄用。
從此輸入流中讀取最多 len 個字節(jié)的數(shù)據(jù)到一個字節(jié)數(shù)組中。 此方法會阻塞,直到某些輸入可用。
LineNumberInputStream 的 read 方法反復(fù)調(diào)用零參數(shù)的 read 方法填充字節(jié)數(shù)組。
覆蓋:
read in class FilterInputStream
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| b | 讀取數(shù)據(jù)的緩沖區(qū)。 |
| off | 數(shù)據(jù)的起始偏移量。 |
| len | 讀取的最大字節(jié)數(shù)。 |
返回:
讀入緩沖區(qū)的總字節(jié)數(shù),如果由于已到達(dá)此流的末尾而沒有更多數(shù)據(jù),則為 -1。
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果發(fā)生 I/O 錯誤。 |
skip
public long skip(long n) throws IOException
已棄用。
跳過并丟棄此輸入流中的 n 字節(jié)數(shù)據(jù)。 由于各種原因,skip 方法最終可能會跳過一些較小的字節(jié)數(shù),可能為 0。返回實際跳過的字節(jié)數(shù)。 如果 n 為負(fù)數(shù),則不跳過任何字節(jié)。
LineNumberInputStream 的 skip 方法創(chuàng)建一個字節(jié)數(shù)組,然后重復(fù)讀取它,直到讀取 n 個字節(jié)或到達(dá)流的末尾。
覆蓋:
skip in class FilterInputStream
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| n | 要跳過的字節(jié)數(shù)。 |
返回:
跳過的實際字節(jié)數(shù)。
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果發(fā)生 I/O 錯誤。 |
setLineNumber
public void setLineNumber(int lineNumber)
已棄用。
將行號設(shè)置為指定的參數(shù)。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| lineNumber | 新的行號。 |
getLineNumber
public int getLineNumber()
已棄用。
返回當(dāng)前行號。
返回:
當(dāng)前行號。
available
public int available() throws IOException
已棄用。
返回可以不阻塞地從此輸入流中讀取的字節(jié)數(shù)。
請注意,如果底層輸入流能夠提供 k 個輸入字符而不阻塞,則 LineNumberInputStream 可以保證只提供 k/2 個字符而不阻塞,因為來自底層輸入流的 k 個字符可能由 k/2 對 '\ r' 和 '\n',它們僅轉(zhuǎn)換為 k/2 '\n' 字符。
覆蓋:
在類 FilterInputStream 中可用
返回:
可以不阻塞地從此輸入流中讀取的字節(jié)數(shù)。
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果發(fā)生 I/O 錯誤。 |
mark
public void mark(int readlimit)
已棄用。
標(biāo)記此輸入流中的當(dāng)前位置。 對 reset 方法的后續(xù)調(diào)用將此流重新定位到最后標(biāo)記的位置,以便后續(xù)讀取重新讀取相同的字節(jié)。
LineNumberInputStream 的mark 方法將當(dāng)前行號記住在一個私有變量中,然后調(diào)用底層輸入流的mark 方法。
覆蓋:
在類 FilterInputStream 中標(biāo)記
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| readlimit | 在標(biāo)記位置無效之前可以讀取的最大字節(jié)數(shù)。 |
reset
public void reset() throws IOException
已棄用。
將此流重新定位到最后一次在此輸入流上調(diào)用標(biāo)記方法時的位置。
LineNumberInputStream 的 reset 方法將行號重置為調(diào)用 mark 方法時的行號,然后調(diào)用底層輸入流的 reset 方法。
流標(biāo)記旨在用于需要提前閱讀以查看流中內(nèi)容的情況。 通常這最容易通過調(diào)用一些通用解析器來完成。 如果流是解析器處理的類型,它就會愉快地運(yùn)行。 如果流不是該類型,解析器應(yīng)該在失敗時拋出異常,如果它發(fā)生在 readlimit 字節(jié)內(nèi),則允許外部代碼重置流并嘗試另一個解析器。
覆蓋:
在類 FilterInputStream 中重置
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果發(fā)生 I/O 錯誤。 |
網(wǎng)頁名稱:創(chuàng)新互聯(lián)鴻蒙OS教程:鴻蒙OSLineNumberInputStream
標(biāo)題鏈接:http://fisionsoft.com.cn/article/cohieep.html


咨詢
建站咨詢
