# Class FileReader

java.lang.Object
java.io.Reader
java.io.InputStreamReader
java.io.FileReader

All Implemented Interfaces:
  `Closeable, AutoCloseable, Readable`

public class FileReader extends InputStreamReader
Reads text from character files using a default buffer size. Decoding from bytes to characters uses either a specified charset or the default charset.

The `FileReader` is meant for reading streams of characters. For reading streams of raw bytes, consider using a `FileInputStream`.

Since:
  1.1
See Also:
  - `InputStreamReader`
  - `FileInputStream`
  - `Charset.defaultCharset()`

## Field Summary

### Fields declared in class Reader

`lock`
Modifier and Type
Field
Description
`protected Object`
`lock`
The object used to synchronize operations on this stream.

## Constructor Summary

Constructors
Constructor
Description
`FileReader(File file)`
Creates a new `FileReader`, given the `File` to read, using the default charset.
`FileReader(FileDescriptor fd)`
Creates a new `FileReader`, given the `FileDescriptor` to read, using the default charset.
`FileReader(File file, Charset charset)`
Creates a new `FileReader`, given the `File` to read and the charset.
`FileReader(String fileName)`
Creates a new `FileReader`, given the name of the file to read, using the default charset.
`FileReader(String fileName, Charset charset)`
Creates a new `FileReader`, given the name of the file to read and the charset.

## Method Summary

### Methods declared in class InputStreamReader

`close, getEncoding, read, read, ready`
Modifier and Type
Method
Description
`void`
`close()`
Closes the stream and releases any system resources associated with it.
`String`
`getEncoding()`
Returns the name of the character encoding being used by this stream.
`int`
`read()`
Reads a single character.
`int`
`read(char[] cbuf, int off, int len)`
Reads characters into a portion of an array.
`boolean`
`ready()`
Tells whether this stream is ready to be read.

### Methods declared in class Reader

`mark, markSupported, nullReader, of, read, read, readAllAsString, readAllLines, reset, skip, transferTo`
Modifier and Type
Method
Description
`void`
`mark(int readAheadLimit)`
Marks the present position in the stream.
`boolean`
`markSupported()`
Tells whether this stream supports the mark() operation.
`static Reader`
`nullReader()`
Returns a new `Reader` that reads no characters.
`static Reader`
`of(CharSequence cs)`
Returns a `Reader` that reads characters from a `CharSequence`.
`int`
`read(char[] cbuf)`
Reads characters into an array.
`int`
`read(CharBuffer target)`
Attempts to read characters into the specified character buffer.
`String`
`readAllAsString()`
Reads all remaining characters into a string.
`List<String>`
`readAllLines()`
Reads all remaining characters as lines of text.
`void`
`reset()`
Resets the stream.
`long`
`skip(long n)`
Skips characters.
`long`
`transferTo(Writer out)`
Reads all characters from this reader and writes the characters to the given writer in the order that they are read.

### Methods declared in class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`
Modifier and Type
Method
Description
`protected Object`
`clone()`
Creates and returns a copy of this object.
`boolean`
`equals(Object obj)`
Indicates whether some other object is "equal to" this one.
`protected void`
`finalize()`
Deprecated, for removal: This API element is subject to removal in a future version.
Finalization is deprecated and subject to removal in a future release.
`final Class<?>`
`getClass()`
Returns the runtime class of this `Object`.
`int`
`hashCode()`
Returns a hash code value for this object.
`final void`
`notify()`
Wakes up a single thread that is waiting on this object's monitor.
`final void`
`notifyAll()`
Wakes up all threads that are waiting on this object's monitor.
`String`
`toString()`
Returns a string representation of the object.
`final void`
`wait()`
Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
`final void`
`wait(long timeoutMillis)`
Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
`final void`
`wait(long timeoutMillis, int nanos)`
Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

## Constructor Details

### FileReader

public FileReader(String fileName) throws FileNotFoundException
Creates a new `FileReader`, given the name of the file to read, using the default charset.

Parameters:
  `fileName` - the name of the file to read
Throws:
  `FileNotFoundException` - if the named file does not exist, is a directory rather than a regular file, or for some other reason cannot be opened for reading.
See Also:
  - `Charset.defaultCharset()`

### FileReader

public FileReader(File file) throws FileNotFoundException
Creates a new `FileReader`, given the `File` to read, using the default charset.

Parameters:
  `file` - the `File` to read
Throws:
  `FileNotFoundException` - if the file does not exist, is a directory rather than a regular file, or for some other reason cannot be opened for reading.
See Also:
  - `Charset.defaultCharset()`

### FileReader

public FileReader(FileDescriptor fd)
Creates a new `FileReader`, given the `FileDescriptor` to read, using the default charset.

Parameters:
  `fd` - the `FileDescriptor` to read
See Also:
  - `Charset.defaultCharset()`

### FileReader

public FileReader(String fileName, Charset charset) throws IOException
Creates a new `FileReader`, given the name of the file to read and the charset.

Parameters:
  `fileName` - the name of the file to read
  `charset` - the charset
Throws:
  `IOException` - if the named file does not exist, is a directory rather than a regular file, or for some other reason cannot be opened for reading.
Since:
  11

### FileReader

public FileReader(File file, Charset charset) throws IOException
Creates a new `FileReader`, given the `File` to read and the charset.

Parameters:
  `file` - the `File` to read
  `charset` - the charset
Throws:
  `IOException` - if the file does not exist, is a directory rather than a regular file, or for some other reason cannot be opened for reading.
Since:
  11