Java.Io.Bufferedreader Class

Java.Io.Bufferedreader Class

Download link:

java.io.BufferedReader Class

Reads text from a character-input stream, buffering characters so as to provide for the efficient reading of characters, arrays, and lines. To perform console input use a byte stream. Today, using a byte stream to read console input is still acceptable.

For commercial applications, the preferred method of reading console input is to use a character-oriented stream. Thismakes your program easier to internationalize and maintain. In Java, console input is accomplished by reading from System.in. To obtain a character-based stream that is attached to the console, wrapSystem.in in a BufferedReader object. BufferedReader supports a buffered input stream.

System.in refers to an object of type InputStream, it can be used for inputStream.

The following program shows how to get input from console using java.

/* Following example shows how to read the characters from the console. */

/* java.io.BufferedReader class Example */

/* Save with file name BufferedReaderExample.java */

import java.io.*;

public class BufferedReaderExample

{

public static void main(String args[])

{

//java.io.BufferedReader DECLARATION

java.io.BufferedReader br = null;

//InputStreamReader DECLARATION

InputStreamReader ir = null;

/*WE SHOULD USE try-catch BECAUSE MOST OF THE

JAVA I/O CLASES THROWS IOException */

try

{

//DECLARE THE PREMITIVE DATA TYPE char

char c;

ir = new InputStreamReader(System.in);

br = new BufferedReader(ir);

System.out.println("Enter Characters, q to Quit : ");

do

{

c = (char) br.read();

System.out.println("Char : "+c);

}while(c != 'q');

}

catch(Exception e)

{

System.out.println("Error Occurred : "+e.getMessage());

}

finally

{

//SHOULD CLOSE STREAMS FINALLY

try

{

if(br!=null)

br.close();

if(ir!=null)

ir.close();

}

catch(Exception ex)

{

System.out.println("Error Occurred : "+ex.getMessage());

}

}

}

}

The above program output may look a little different from what you expected because System.in is line buffered, by default. This means that no input is actually passed to the program until you press ENTER. As you can guess, this does not make read() particularly valuable for interactive console input.

The following program demonstrates BufferedReader and the readLine() method; the program reads and displays lines of text until you enter the word "stop".

/* Following example shows how to read the lines of text from the console. */

/* java.io.BufferedReader class Example 2 */

/* Save with file name BufferedReaderExample2.java */

import java.io.*;

public class BufferedReaderExample2

{

public static void main(String args[])

{

//java.io.BufferedReader DECLARATION

java.io.BufferedReader br = null;

//InputStreamReader DECLARATION

InputStreamReader ir = null;

try

{

String str;

ir = new InputStreamReader(System.in);

br = new BufferedReader(ir);

System.out.println("Enter some lines of text, stop to Quit : ");

do

{

str = br.readLine();

System.out.println("Line Text is : "+str);

}while(!str.equals("stop"));

}

catch(Exception e)

{

System.out.println("Error Occurred : "+e.getMessage());

}

finally

{

//SHOULD CLOSE STREAMS FINALLY

try

{

if(br!=null)

br.close();

if(ir!=null)

ir.close();

}

catch(Exception ex)

{

System.out.println("Error Occurred : "+ex.getMessage());

}

}

}

}

/* Following example shows how to read the text from file using java. */

/* java.io.BufferedReader class Example 3 */

/* Save with file name BufferedReaderExample3.java */

import java.io.*;

public class BufferedReaderExample3

{

public static void main(String args[])

{

//java.io.BufferedReader DECLARATION

java.io.BufferedReader br = null;

//InputStreamReader DECLARATION

InputStreamReader ir = null;

//FileInputStream DECLARATION

FileInputStream fis = null;

try

{

int ch=0;

fis = new FileInputStream("BufferedReaderExample3.java");

ir = new InputStreamReader(fis);

br = new BufferedReader(ir);

while((ch = br.read()) != -1)

{

//CONVERT byte TO char

System.out.print((char)ch);

}

}

catch(Exception e)

{

System.out.println("Error Occurred : "+e.getMessage());

}

finally

{

//SHOULD CLOSE STREAMS FINALLY

try

{

if(br!=null)

br.close();

if(ir!=null)

ir.close();

}

catch(Exception ex)

{

System.out.println("Error Occurred : "+ex.getMessage());

}

}

}

}

/* Following example shows how to read total bytes from file into array using java BufferedReader. */

/* java.io.BufferedReader class Example 4 */

/* Save with file name BufferedReaderExample4.java */

import java.io.*;

public class BufferedReaderExample4

{

public static void main(String args[])

{

//java.io.BufferedReader DECLARATION

java.io.BufferedReader br = null;

//InputStreamReader DECLARATION

InputStreamReader ir = null;

//FileInputStream DECLARATION

FileInputStream fis = null;

//ARRAY TO READBYTES

char charbuff[] = null;

try

{

fis = new FileInputStream("BufferedReaderExample4.java");

ir = new InputStreamReader(fis);

br = new BufferedReader(ir);

//GET THE AVAILABLE BYTES FROM InputReader AND CREATES ARRAY

charbuff = new char[fis.available()];

//READ TOTAL BYTES FROM FILE

br.read(charbuff, 0,fis.available());

//PRINT CHARACTERS FROM ARRAY

for(int j=0;j<charbuff.length;j++)

{

//CONVERT byte TO char

System.out.print( (char) charbuff[j]);

}

}

catch(Exception e)

{

System.out.println("Error Occurred : "+e.getMessage());

}

finally

{

//SHOULD CLOSE STREAMS FINALLY

try

{

//RELEASE ARRAY MEMORY

charbuff = null;

if(br!=null)

br.close();

if(ir!=null)

ir.close();

}

catch(Exception ex)

{

System.out.println("Error Occurred : "+ex.getMessage());

}

}

}

}

/* Following example shows how to read text line by line from file using java BufferedReader. */

/* java.io.BufferedReader class Example 5 */

/* Save with file name BufferedReaderExample5.java */

import java.io.*;

public class BufferedReaderExample5

{

public static void main(String args[])

{

//java.io.BufferedReader DECLARATION

java.io.BufferedReader br = null;

//InputStreamReader DECLARATION

InputStreamReader ir = null;

//FileInputStream DECLARATION

FileInputStream fis = null;

//String TO READ LINE FROM FILE

String line = null;

try

{

fis = new FileInputStream("BufferedReaderExample5.java");

ir = new InputStreamReader(fis);

br = new BufferedReader(ir);

//GET THE LINE FROM FILE

while((line = br.readLine()) != null)

{

//PRINT THE LINE

System.out.println(line);

}

}

catch(Exception e)

{

System.out.println("Error Occurred : "+e.getMessage());

}

finally

{

//SHOULD CLOSE STREAMS FINALLY

try

{

//RELEASE MEMORY

line = null;

if(br!=null)

br.close();

if(ir!=null)

ir.close();

}

catch(Exception ex)

{

System.out.println("Error Occurred : "+ex.getMessage());

}

}

}

}

/* Following example shows how to read bytes from file using java BufferedReader. */

/* java.io.BufferedReader class Example 6 */

/* Save with file name BufferedReaderExample6.java */

import java.io.*;

public class BufferedReaderExample6

{

public static void main(String args[])

{

//java.io.BufferedReader DECLARATION

java.io.BufferedReader br = null;

//InputStreamReader DECLARATION

InputStreamReader ir = null;

//FileInputStream DECLARATION

FileInputStream fis = null;

//int TO READ byte FROM FILE

int ch;

try

{

fis = new FileInputStream("BufferedReaderExample6.java");

ir = new InputStreamReader(fis);

br = new BufferedReader(ir);

int i = 1;

//GET THE bytes FROM FILE

while((ch = br.read()) !=-1)

{

//PRINT THE CHARACTER

System.out.print((char) ch);

if( (i%10) == 0)

br.skip(3);

i++;

}

}

catch(Exception e)

{

System.out.println("Error Occurred : "+e.getMessage());

}

finally

{

//SHOULD CLOSE STREAMS FINALLY

try

{

if(br!=null)

br.close();

if(ir!=null)

ir.close();

}

catch(Exception ex)

{

System.out.println("Error Occurred : "+ex.getMessage());

}

}

}

}

/* Following example shows how to read bytes from file using java BufferedReader. */

/* java.io.BufferedReader class Example 7 */

/* Save with file name BufferedReaderExample7.java */

import java.io.*;

public class BufferedReaderExample7

{

public static void main(String args[])

{

//java.io.BufferedReader DECLARATION

java.io.BufferedReader br = null;

//InputStreamReader DECLARATION

InputStreamReader ir = null;

//FileInputStream DECLARATION

FileInputStream fis = null;

//int TO READ byte FROM FILE

int ch;

try

{

fis = new FileInputStream("BufferedReaderExample7.java");

ir = new InputStreamReader(fis);

br = new BufferedReader(ir);

int i = 1;

if(br.ready())

{

//GET THE bytes FROM FILE

while((ch = br.read()) !=-1)

{

//PRINT THE CHARACTER

System.out.print((char) ch);

if(br.markSupported())

{

if(i<30)

{

if( (i%10) == 0)

br.mark(i);

if((i%20)==0)

{

br.reset();

}

}

if((i%30)==0)

break;

}

i++;

}

}

}

catch(Exception e)

{

System.out.println("Error Occurred : "+e.getMessage());

}

finally

{

//SHOULD CLOSE STREAMS FINALLY

try

{

if(br!=null)

br.close();

if(ir!=null)

ir.close();

}

catch(Exception ex)

{

System.out.println("Error Occurred : "+ex.getMessage());

}

}

}

}

1