Package org.zkoss.io

## Class FileWriter

- java.lang.Object
- - java.io.Writer
  - - java.io.OutputStreamWriter
    - - org.zkoss.io.FileWriter

- All Implemented Interfaces:
    `java.io.Closeable`, `java.io.Flushable`, `java.lang.Appendable`, `java.lang.AutoCloseable`

      public class FileWriter
      extends java.io.OutputStreamWriter

  Convenience class for writing character files. Unlike java.io.FileWriter, where the default character encoding is used, it accepts different character encoding.
  Since:
    3.0.8
  Author:
    tomyeh

- - ### Field Summary

    - ### Fields inherited from class java.io.Writer

      `lock`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `FileWriter​(java.io.FileDescriptor fd, java.lang.String charset)` | Constructs a FileWriter object associated with a file descriptor.
    `FileWriter​(java.io.File file, java.lang.String charset)` | Constructs a FileWriter object given a File object.
    `FileWriter​(java.io.File file, java.lang.String charset, boolean append)` | Constructs a FileWriter object given a File object.
    `FileWriter​(java.lang.String filename, java.lang.String charset)` | Constructs a FileWriter object given a file name.
    `FileWriter​(java.lang.String filename, java.lang.String charset, boolean append)` | Constructs a FileWriter object given a file name with a boolean indicating whether or not to append the data written.

  - ### Method Summary

    - ### Methods inherited from class java.io.OutputStreamWriter

      `append, append, close, flush, getEncoding, write, write, write`

    - ### Methods inherited from class java.io.Writer

      `append, nullWriter, write, write`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### FileWriter

          public FileWriter​(java.lang.String filename,
                            java.lang.String charset)
                     throws java.io.IOException

      Constructs a FileWriter object given a file name.
      Parameters:
        `filename` - String The system-dependent filename.
        `charset` - the charset to decode the file, such as UTF-8. If null, UTF-8 is assumed.
      Throws:
        `java.io.IOException` - if the named file exists but is a directory rather than a regular file, does not exist but cannot be created, or cannot be opened for any other reason

    - #### FileWriter

          public FileWriter​(java.lang.String filename,
                            java.lang.String charset,
                            boolean append)
                     throws java.io.IOException

      Constructs a FileWriter object given a file name with a boolean indicating whether or not to append the data written.
      Parameters:
        `filename` - String The system-dependent filename.
        `charset` - the charset to decode the file, such as UTF-8. If null, UTF-8 is assumed.
        `append` - boolean if true, then data will be written to the end of the file rather than the beginning.
      Throws:
        `java.io.IOException` - if the named file exists but is a directory rather than a regular file, does not exist but cannot be created, or cannot be opened for any other reason

    - #### FileWriter

          public FileWriter​(java.io.File file,
                            java.lang.String charset)
                     throws java.io.IOException

      Constructs a FileWriter object given a File object.
      Parameters:
        `file` - a File object to write to.
        `charset` - the charset to decode the file, such as UTF-8. If null, UTF-8 is assumed.
      Throws:
        `java.io.IOException` - if the named file exists but is a directory rather than a regular file, does not exist but cannot be created, or cannot be opened for any other reason

    - #### FileWriter

          public FileWriter​(java.io.File file,
                            java.lang.String charset,
                            boolean append)
                     throws java.io.IOException

      Constructs a FileWriter object given a File object. If the second argument is true, then bytes will be written to the end of the file rather than the beginning.
      Parameters:
        `file` - a File object to write to
        `charset` - the charset to decode the file, such as UTF-8. If null, UTF-8 is assumed.
        `append` - if true, then bytes will be written to the end of the file rather than the beginning
      Throws:
        `java.io.IOException` - if the named file exists but is a directory rather than a regular file, does not exist but cannot be created, or cannot be opened for any other reason

    - #### FileWriter

          public FileWriter​(java.io.FileDescriptor fd,
                            java.lang.String charset)
                     throws java.io.IOException

      Constructs a FileWriter object associated with a file descriptor.
      Parameters:
        `fd` - FileDescriptor object to write to.
        `charset` - the charset to decode the file, such as UTF-8. If null, UTF-8 is assumed.
      Throws:
        `java.io.IOException`