Android
java.io
public class

java.io.BufferedReader

java.lang.Object
java.io.Reader Closeable Readable
java.io.BufferedReader

BufferedReader is a buffered character input reader. Buffering allows reading from character streams more efficiently. If the default size of the buffer is not practical, another size may be specified. Reading a character from a Reader class usually involves reading a character from its Stream or subsequent Reader. It is advisable to wrap a BufferedReader around those Readers whose read operations may have high latency. For example, the following code

 BufferedReader inReader = new BufferedReader(new FileReader("file.java"));
 
will buffer input for the file file.java.

Known Direct Subclasses

See Also

Summary

Fields inherited from class java.io.Reader

Public Constructors

            BufferedReader(Reader in)
Constructs a new BufferedReader on the Reader in.
            BufferedReader(Reader in, int size)
Constructs a new BufferedReader on the Reader in.

Public Methods

          void  close()
Close the Reader.
          void  mark(int readlimit)
Set a Mark position in this BufferedReader.
          boolean  markSupported()
Returns a boolean indicating whether or not this Reader supports mark() and reset().
          int  read(char[] buffer, int offset, int length)
Reads at most length characters from this BufferedReader and stores them at offset in the character array buffer.
          int  read()
Reads a single character from this reader and returns the result as an int.
          String  readLine()
Returns a String representing the next line of text available in this BufferedReader.
          boolean  ready()
Returns a boolean indicating whether or not this Reader is ready to be read without blocking.
          void  reset()
Reset this BufferedReader's position to the last mark() location.
          long  skip(long amount)
Skips amount number of characters in this Reader.
Methods inherited from class java.io.Reader
Methods inherited from class java.lang.Object
Methods inherited from interface java.io.Closeable
Methods inherited from interface java.lang.Readable

Details

Public Constructors

public BufferedReader(Reader in)

Constructs a new BufferedReader on the Reader in. The default buffer size (8K) is allocated and all reads can now be filtered through this BufferedReader.

Parameters

in the Reader to buffer reads on.

public BufferedReader(Reader in, int size)

Constructs a new BufferedReader on the Reader in. The buffer size is specified by the parameter size and all reads can now be filtered through this BufferedReader.

Parameters

in the Reader to buffer reads on.
size the size of buffer to allocate.

Throws

IllegalArgumentException if the size is <= 0

Public Methods

public void close()

Close the Reader. This implementation closes the Reader being filtered and releases the buffer used by this reader. If this BufferedReader has already been closed, nothing is done.

Throws

IOException If an error occurs attempting to close this BufferedReader.

public void mark(int readlimit)

Set a Mark position in this BufferedReader. The parameter readLimit indicates how many characters can be read before a mark is invalidated. Sending reset() will reposition the reader back to the marked position provided readLimit has not been surpassed.

Parameters

readlimit an int representing how many characters must be read before invalidating the mark.

Throws

IOException If an error occurs attempting mark this BufferedReader.
IllegalArgumentException If readlimit is < 0

public boolean markSupported()

Returns a boolean indicating whether or not this Reader supports mark() and reset(). This implementation returns true.

Returns

  • true if mark() and reset() are supported, false otherwise

public int read(char[] buffer, int offset, int length)

Reads at most length characters from this BufferedReader and stores them at offset in the character array buffer. Returns the number of characters actually read or -1 if the end of reader was encountered. If all the buffered characters have been used, a mark has not been set, and the requested number of characters is larger than this Readers buffer size, this implementation bypasses the buffer and simply places the results directly into buffer.

Parameters

buffer character array to store the read characters
offset offset in buf to store the read characters
length maximum number of characters to read

Returns

  • number of characters read or -1 if end of reader.

Throws

IOException If the BufferedReader is already closed or some other IO error occurs.

public int read()

Reads a single character from this reader and returns the result as an int. The 2 higher-order characters are set to 0. If the end of reader was encountered then return -1. This implementation either returns a character from the buffer or if there are no characters available, fill the buffer then return a character or -1.

Returns

  • the character read or -1 if end of reader.

Throws

IOException If the BufferedReader is already closed or some other IO error occurs.

public String readLine()

Returns a String representing the next line of text available in this BufferedReader. A line is represented by 0 or more characters followed by '\n', '\r', '\r\n' or end of stream. The String does not include the newline sequence.

Returns

  • the contents of the line or null if no characters were read before end of stream.

Throws

IOException If the BufferedReader is already closed or some other IO error occurs.

public boolean ready()

Returns a boolean indicating whether or not this Reader is ready to be read without blocking. If the result is true, the next read() will not block. If the result is false this Reader may or may not block when read() is sent.

Returns

  • true if the receiver will not block when read() is called, false if unknown or blocking will occur.

Throws

IOException If the BufferedReader is already closed or some other IO error occurs.

public void reset()

Reset this BufferedReader's position to the last mark() location. Invocations of read()/skip() will occur from this new location. If this Reader was not marked, throw IOException.

Throws

IOException If a problem occurred, the receiver does not support mark()/reset(), or no mark has been set.

public long skip(long amount)

Skips amount number of characters in this Reader. Subsequent read()'s will not return these characters unless reset() is used. Skipping characters may invalidate a mark if marklimit is surpassed.

Parameters

amount the maximum number of characters to skip.

Returns

  • the number of characters actually skipped.

Throws

IOException If the BufferedReader is already closed or some other IO error occurs.
IllegalArgumentException If amount is negative
Copyright 2007 Google Inc. Build 0.9_r1-98467 - 14 Aug 2008 18:56