FileReader (Java SE 26 & JDK 26)
Description: declaration: module: java.base, package: java.io, class: FileReader
Keywords: java.io.FileReader class

# 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