- Java.io package classes
- Java.io - Home
- Java.io - BufferedInputStream
- Java.io - BufferedOutputStream
- Java.io - BufferedReader
- Java.io - BufferedWriter
- Java.io - ByteArrayInputStream
- Java.io - ByteArrayOutputStream
- Java.io - CharArrayReader
- Java.io - CharArrayWriter
- Java.io - Console
- Java.io - DataInputStream
- Java.io - DataOutputStream
- Java.io - File
- Java.io - FileDescriptor
- Java.io - FileInputStream
- Java.io - FileOutputStream
- Java.io - FilePermission
- Java.io - FileReader
- Java.io - FileWriter
- Java.io - FilterInputStream
- Java.io - FilterOutputStream
- Java.io - FilterReader
- Java.io - FilterWriter
- Java.io - InputStream
- Java.io - InputStreamReader
- Java.io - LineNumberInputStream
- Java.io - LineNumberReader
- Java.io - ObjectInputStream
- Java.io - ObjectInputStream.GetField
- Java.io - ObjectOutputStream
- io - ObjectOutputStream.PutField
- Java.io - ObjectStreamClass
- Java.io - ObjectStreamField
- Java.io - OutputStream
- Java.io - OutputStreamWriter
- Java.io - PipedInputStream
- Java.io - PipedOutputStream
- Java.io - PipedReader
- Java.io - PipedWriter
- Java.io - PrintStream
- Java.io - PrintWriter
- Java.io - PushbackInputStream
- Java.io - PushbackReader
- Java.io - RandomAccessFile
- Java.io - Reader
- Java.io - SequenceInputStream
- Java.io - SerializablePermission
- Java.io - StreamTokenizer
- Java.io - StringBufferInputStream
- Java.io - StringReader
- Java.io - StringWriter
- Java.io - Writer
- Java.io package extras
- Java.io - Interfaces
- Java.io - Exceptions
- Java.io package Useful Resources
- Java.io - Discussion
Java.io.FileInputStream.available() Method
Description
The java.io.FileInputStream.available() method returns number of remaining bytes that can be read from this input stream without blocking by the next method call for this input stream. The next method call can also be the another thread.
Declaration
Following is the declaration for java.io.FileInputStream.available() method −
public int available()
Parameters
NA
Return Value
The methods returns and estimated of the number of remaining bytes that can be read from this input stream without blocking.
Exception
IOException − If the file input stream has been closed by calling close or any I/O error occurs.
Example
The following example shows the usage of java.io.FileInputStream.available() method.
package com.tutorialspoint; 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(); } } } }
Assuming we have a text file c:/test.txt, which has the following content. This file will be used as an input for our example program −
ABCDEF
Let us compile and run the above program, this will produce the following result −
Available: 5; Read: A Available: 4; Read: B Available: 3; Read: C Available: 2; Read: D Available: 1; Read: E Available: 0; Read: F