Package org.apache.commons.io.output
Class FileWriterWithEncoding
- java.lang.Object
-
- java.io.Writer
-
- org.apache.commons.io.output.FileWriterWithEncoding
-
- All Implemented Interfaces:
Closeable
,Flushable
,Appendable
,AutoCloseable
public class FileWriterWithEncoding extends Writer
Writer of files that allows the encoding to be set.This class provides a simple alternative to
FileWriter
that allows an encoding to be set. Unfortunately, it cannot subclassFileWriter
.By default, the file will be overwritten, but this may be changed to append.
The encoding must be specified using either the name of the
Charset
, theCharset
, or aCharsetEncoder
. If the default encoding is required then use theFileWriter
directly, rather than this implementation.- Since:
- 1.4
-
-
Constructor Summary
Constructors Constructor Description FileWriterWithEncoding(File file, String charsetName)
Constructs a FileWriterWithEncoding with a file encoding.FileWriterWithEncoding(File file, String charsetName, boolean append)
Constructs a FileWriterWithEncoding with a file encoding.FileWriterWithEncoding(File file, Charset charset)
Constructs a FileWriterWithEncoding with a file encoding.FileWriterWithEncoding(File file, CharsetEncoder charsetEncoder)
Constructs a FileWriterWithEncoding with a file encoding.FileWriterWithEncoding(File file, CharsetEncoder charsetEncoder, boolean append)
Constructs a FileWriterWithEncoding with a file encoding.FileWriterWithEncoding(File file, Charset encoding, boolean append)
Constructs a FileWriterWithEncoding with a file encoding.FileWriterWithEncoding(String fileName, String charsetName)
Constructs a FileWriterWithEncoding with a file encoding.FileWriterWithEncoding(String fileName, String charsetName, boolean append)
Constructs a FileWriterWithEncoding with a file encoding.FileWriterWithEncoding(String fileName, Charset charset)
Constructs a FileWriterWithEncoding with a file encoding.FileWriterWithEncoding(String fileName, CharsetEncoder encoding)
Constructs a FileWriterWithEncoding with a file encoding.FileWriterWithEncoding(String fileName, CharsetEncoder charsetEncoder, boolean append)
Constructs a FileWriterWithEncoding with a file encoding.FileWriterWithEncoding(String fileName, Charset charset, boolean append)
Constructs a FileWriterWithEncoding with a file encoding.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
Close the stream.void
flush()
Flush the stream.void
write(char[] chr)
Write the characters from an array.void
write(char[] chr, int st, int end)
Write the specified characters from an array.void
write(int idx)
Write a character.void
write(String str)
Write the characters from a string.void
write(String str, int st, int end)
Write the specified characters from a string.-
Methods inherited from class java.io.Writer
append, append, append, nullWriter
-
-
-
-
Constructor Detail
-
FileWriterWithEncoding
public FileWriterWithEncoding(String fileName, String charsetName) throws IOException
Constructs a FileWriterWithEncoding with a file encoding.- Parameters:
fileName
- the name of the file to write to, not nullcharsetName
- the name of the requested charset, not null- Throws:
NullPointerException
- if the file name or encoding is nullIOException
- in case of an I/O error
-
FileWriterWithEncoding
public FileWriterWithEncoding(String fileName, String charsetName, boolean append) throws IOException
Constructs a FileWriterWithEncoding with a file encoding.- Parameters:
fileName
- the name of the file to write to, not nullcharsetName
- the name of the requested charset, not nullappend
- true if content should be appended, false to overwrite- Throws:
NullPointerException
- if the file name or encoding is nullIOException
- in case of an I/O error
-
FileWriterWithEncoding
public FileWriterWithEncoding(String fileName, Charset charset) throws IOException
Constructs a FileWriterWithEncoding with a file encoding.- Parameters:
fileName
- the name of the file to write to, not nullcharset
- the charset to use, not null- Throws:
NullPointerException
- if the file name or encoding is nullIOException
- in case of an I/O error
-
FileWriterWithEncoding
public FileWriterWithEncoding(String fileName, Charset charset, boolean append) throws IOException
Constructs a FileWriterWithEncoding with a file encoding.- Parameters:
fileName
- the name of the file to write to, not nullcharset
- the encoding to use, not nullappend
- true if content should be appended, false to overwrite- Throws:
NullPointerException
- if the file name or encoding is nullIOException
- in case of an I/O error
-
FileWriterWithEncoding
public FileWriterWithEncoding(String fileName, CharsetEncoder encoding) throws IOException
Constructs a FileWriterWithEncoding with a file encoding.- Parameters:
fileName
- the name of the file to write to, not nullencoding
- the encoding to use, not null- Throws:
NullPointerException
- if the file name or encoding is nullIOException
- in case of an I/O error
-
FileWriterWithEncoding
public FileWriterWithEncoding(String fileName, CharsetEncoder charsetEncoder, boolean append) throws IOException
Constructs a FileWriterWithEncoding with a file encoding.- Parameters:
fileName
- the name of the file to write to, not nullcharsetEncoder
- the encoding to use, not nullappend
- true if content should be appended, false to overwrite- Throws:
NullPointerException
- if the file name or encoding is nullIOException
- in case of an I/O error
-
FileWriterWithEncoding
public FileWriterWithEncoding(File file, String charsetName) throws IOException
Constructs a FileWriterWithEncoding with a file encoding.- Parameters:
file
- the file to write to, not nullcharsetName
- the name of the requested charset, not null- Throws:
NullPointerException
- if the file or encoding is nullIOException
- in case of an I/O error
-
FileWriterWithEncoding
public FileWriterWithEncoding(File file, String charsetName, boolean append) throws IOException
Constructs a FileWriterWithEncoding with a file encoding.- Parameters:
file
- the file to write to, not nullcharsetName
- the name of the requested charset, not nullappend
- true if content should be appended, false to overwrite- Throws:
NullPointerException
- if the file or encoding is nullIOException
- in case of an I/O error
-
FileWriterWithEncoding
public FileWriterWithEncoding(File file, Charset charset) throws IOException
Constructs a FileWriterWithEncoding with a file encoding.- Parameters:
file
- the file to write to, not nullcharset
- the encoding to use, not null- Throws:
NullPointerException
- if the file or encoding is nullIOException
- in case of an I/O error
-
FileWriterWithEncoding
public FileWriterWithEncoding(File file, Charset encoding, boolean append) throws IOException
Constructs a FileWriterWithEncoding with a file encoding.- Parameters:
file
- the file to write to, not nullencoding
- the name of the requested charset, not nullappend
- true if content should be appended, false to overwrite- Throws:
NullPointerException
- if the file or encoding is nullIOException
- in case of an I/O error
-
FileWriterWithEncoding
public FileWriterWithEncoding(File file, CharsetEncoder charsetEncoder) throws IOException
Constructs a FileWriterWithEncoding with a file encoding.- Parameters:
file
- the file to write to, not nullcharsetEncoder
- the encoding to use, not null- Throws:
NullPointerException
- if the file or encoding is nullIOException
- in case of an I/O error
-
FileWriterWithEncoding
public FileWriterWithEncoding(File file, CharsetEncoder charsetEncoder, boolean append) throws IOException
Constructs a FileWriterWithEncoding with a file encoding.- Parameters:
file
- the file to write to, not nullcharsetEncoder
- the encoding to use, not nullappend
- true if content should be appended, false to overwrite- Throws:
NullPointerException
- if the file or encoding is nullIOException
- in case of an I/O error
-
-
Method Detail
-
write
public void write(int idx) throws IOException
Write a character.- Overrides:
write
in classWriter
- Parameters:
idx
- the character to write- Throws:
IOException
- if an I/O error occurs
-
write
public void write(char[] chr) throws IOException
Write the characters from an array.- Overrides:
write
in classWriter
- Parameters:
chr
- the characters to write- Throws:
IOException
- if an I/O error occurs
-
write
public void write(char[] chr, int st, int end) throws IOException
Write the specified characters from an array.- Specified by:
write
in classWriter
- Parameters:
chr
- the characters to writest
- The start offsetend
- The number of characters to write- Throws:
IOException
- if an I/O error occurs
-
write
public void write(String str) throws IOException
Write the characters from a string.- Overrides:
write
in classWriter
- Parameters:
str
- the string to write- Throws:
IOException
- if an I/O error occurs
-
write
public void write(String str, int st, int end) throws IOException
Write the specified characters from a string.- Overrides:
write
in classWriter
- Parameters:
str
- the string to writest
- The start offsetend
- The number of characters to write- Throws:
IOException
- if an I/O error occurs
-
flush
public void flush() throws IOException
Flush the stream.- Specified by:
flush
in interfaceFlushable
- Specified by:
flush
in classWriter
- Throws:
IOException
- if an I/O error occurs
-
close
public void close() throws IOException
Close the stream.- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Specified by:
close
in classWriter
- Throws:
IOException
- if an I/O error occurs
-
-