Java-io-fileinputstream-available
提供:Dev Guides
Java.io.FileInputStream.available()メソッド
説明
- java.io.FileInputStream.available()*メソッドは、この入力ストリームの次のメソッド呼び出しによってブロックされることなく、この入力ストリームから読み取ることができる残りのバイト数を返します。 次のメソッド呼び出しは、別のスレッドにすることもできます。
宣言
以下は* java.io.FileInputStream.available()*メソッドの宣言です-
public int available()
パラメーター
NA
戻り値
メソッドは、ブロックせずにこの入力ストリームから読み取ることができる残りのバイト数を返し、推定します。
例外
*IOException* -closeの呼び出しによってファイル入力ストリームが閉じられた場合、またはI/Oエラーが発生した場合。
例
次の例は、java.io.FileInputStream.available()メソッドの使用方法を示しています。
package com.finddevguides;
import java.io.IOException;
import java.io.FileInputStream;
public class FileInputStreamDemo {
public static void main(String[] args) throws IOException {
FileInputStream fis = null;
int available = 0;
int i = 0;
try {
//create new file input stream
fis = new FileInputStream("C://test.txt");
//read till the end of the stream
while((i = fis.read())!=-1) {
//available bytes
available = fis.available();
//convert integer to character
char c = (char)i;
//prints
System.out.print("Available: "+available);
System.out.println("; Read: "+c);
}
} catch(Exception ex) {
//if an I/O error occurs
ex.printStackTrace();
} finally {
//releases all system resources from the streams
if(fis!=null) {
fis.close();
}
}
}
}
テキストファイル* c:/test.txt*があり、次の内容があるとします。 このファイルは、サンプルプログラムの入力として使用されます-
ABCDEF
上記のプログラムをコンパイルして実行すると、次の結果が生成されます-
Available: 5; Read: A
Available: 4; Read: B
Available: 3; Read: C
Available: 2; Read: D
Available: 1; Read: E
Available: 0; Read: F