Oracle Fusion Middleware Java API Reference for Oracle ADF Mobile Client
11g Release 1 (11.1.1)

E17503-02

oracle.adfnmc.java.io
Class BufferedReader

java.lang.Object
  extended by java.io.Reader
      extended by oracle.adfnmc.java.io.BufferedReader
Direct Known Subclasses:
LineNumberReader

public class BufferedReader
extends java.io.Reader

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.


Field Summary
 
Fields inherited from class java.io.Reader
lock
 
Constructor Summary
BufferedReader(java.io.Reader in)
          Constructs a new BufferedReader on the Reader in.
BufferedReader(java.io.Reader in, int size)
          Constructs a new BufferedReader on the Reader in.
 
Method Summary
 void close()
          Close the Reader.
 void mark(int readlimit)
          Set a Mark position in this BufferedReader.
 boolean markSupported()
          Answers a boolean indicating whether or not this Reader supports mark() and reset().
 int read()
          Reads a single character from this reader and returns the result as an int.
 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.
 java.lang.String readLine()
          Answers a String representing the next line of text available in this BufferedReader.
 boolean ready()
          Answers 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
read
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BufferedReader

public BufferedReader(java.io.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.

BufferedReader

public BufferedReader(java.io.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:
java.lang.IllegalArgumentException - if the size is <= 0
Method Detail

close

public void close()
           throws java.io.IOException
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.

Specified by:
close in class java.io.Reader
Throws:
java.io.IOException - If an error occurs attempting to close this BufferedReader.

mark

public void mark(int readlimit)
          throws java.io.IOException
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.

Overrides:
mark in class java.io.Reader
Parameters:
readlimit - an int representing how many characters must be read before invalidating the mark.
Throws:
java.io.IOException - If an error occurs attempting mark this BufferedReader.
java.lang.IllegalArgumentException - If readlimit is < 0

markSupported

public boolean markSupported()
Answers a boolean indicating whether or not this Reader supports mark() and reset(). This implementation answers true.

Overrides:
markSupported in class java.io.Reader
Returns:
true if mark() and reset() are supported, false otherwise

read

public int read()
         throws java.io.IOException
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.

Overrides:
read in class java.io.Reader
Returns:
the character read or -1 if end of reader.
Throws:
java.io.IOException - If the BufferedReader is already closed or some other IO error occurs.

read

public int read(char[] buffer,
                int offset,
                int length)
         throws java.io.IOException
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.

Specified by:
read in class java.io.Reader
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:
java.io.IOException - If the BufferedReader is already closed or some other IO error occurs.

readLine

public java.lang.String readLine()
                          throws java.io.IOException
Answers 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. In EBCDIC systems, a new line can also be represented by the '\u0085' (NEL) character.

Returns:
the contents of the line or null if no characters were read before end of stream.
Throws:
java.io.IOException - If the BufferedReader is already closed or some other IO error occurs.

ready

public boolean ready()
              throws java.io.IOException
Answers 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.

Overrides:
ready in class java.io.Reader
Returns:
true if the receiver will not block when read() is called, false if unknown or blocking will occur.
Throws:
java.io.IOException - If the BufferedReader is already closed or some other IO error occurs.

reset

public void reset()
           throws java.io.IOException
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.

Overrides:
reset in class java.io.Reader
Throws:
java.io.IOException - If a problem occurred, the receiver does not support mark()/reset(), or no mark has been set.

skip

public long skip(long amount)
          throws java.io.IOException
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.

Overrides:
skip in class java.io.Reader
Parameters:
amount - the maximum number of characters to skip.
Returns:
the number of characters actually skipped.
Throws:
java.io.IOException - If the BufferedReader is already closed or some other IO error occurs.
java.lang.IllegalArgumentException - If amount is negative

Oracle Fusion Middleware Java API Reference for Oracle ADF Mobile Client
11g Release 1 (11.1.1)

E17503-02

Copyright © 2011, Oracle and/or its affiliates. All rights reserved.