java中inputstream的用法是什么
Java中的InputStream是一个抽象类,用于从数据源(如文件、网络连接等)中读取字节流。它提供了一系列的方法来读取不同类型的数据。
InputStreamの主なメソッドを以下に示します。
- int read() : 入力ストリームから1バイトのデータを読み取り、そのバイトの値(整数)を返します。
- 入力ストリームから最大b.length個分のデータをバイト配列bに読み込みます。読み込んだ実際のバイト数を返します。入力ストリームの最後に達した場合は-1を返します。
- InputStreamから最大lenバイトのデータをよみ、バイト配列bのオフセットoffから格納します。実際に読み込んだバイト数を返します。InputStreamの末尾に達した場合は-1を返します。
- long skip(long n):入力ストリームから n 個のバイトのデータをスキップし、実際にスキップされたバイト数を返します。
- 非ブロッキングで入力ストリームから読み取ることができるバイト数を返す
- void close() :入力を閉じることで関連付けるリソースを解放します。
InputStreamを使用する一般的な手順は次のとおりです。
- FileInputStreamやByteArrayInputStreamなど、InputStreamの具象クラスのインスタンスを作成する。
- read()メソッドやread(byte[] b)メソッドでデータを読み込み、適切な処理を行います。
- データをすべて読み込んだら、ストリームを閉じてリソースを解放します。
以下に例のコードを示します。
try {
InputStream inputStream = new FileInputStream("input.txt");
int data = inputStream.read();
while (data != -1) {
// 处理读取到的数据
System.out.println(data);
data = inputStream.read();
}
inputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
InputStreamを使用する際には、例外処理とリソースの解放が必要で、try-catch-finally文ブロックを使用してリソースの適切な解放を確実にできます。