org.apache.commons.io.output

Class FileWriterWithEncoding

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 subclass FileWriter.

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, the Charset, or a CharsetEncoder. If the default encoding is required then use the java.io.FileWriter directly, rather than this implementation.

Since: Commons IO 1.4

Version: $Id: FileWriterWithEncoding.java 611634 2008-01-13 20:35:00Z niallp $

Field Summary
Writerout
The writer to decorate.
Constructor Summary
FileWriterWithEncoding(String filename, String encoding)
Constructs a FileWriterWithEncoding with a file encoding.
FileWriterWithEncoding(String filename, String encoding, boolean append)
Constructs a FileWriterWithEncoding with a file encoding.
FileWriterWithEncoding(String filename, Charset encoding)
Constructs a FileWriterWithEncoding with a file encoding.
FileWriterWithEncoding(String filename, Charset encoding, boolean append)
Constructs a FileWriterWithEncoding with a file encoding.
FileWriterWithEncoding(String filename, CharsetEncoder encoding)
Constructs a FileWriterWithEncoding with a file encoding.
FileWriterWithEncoding(String filename, CharsetEncoder encoding, boolean append)
Constructs a FileWriterWithEncoding with a file encoding.
FileWriterWithEncoding(File file, String encoding)
Constructs a FileWriterWithEncoding with a file encoding.
FileWriterWithEncoding(File file, String encoding, boolean append)
Constructs a FileWriterWithEncoding with a file encoding.
FileWriterWithEncoding(File file, Charset encoding)
Constructs a FileWriterWithEncoding with a file encoding.
FileWriterWithEncoding(File file, Charset encoding, boolean append)
Constructs a FileWriterWithEncoding with a file encoding.
FileWriterWithEncoding(File file, CharsetEncoder encoding)
Constructs a FileWriterWithEncoding with a file encoding.
FileWriterWithEncoding(File file, CharsetEncoder encoding, boolean append)
Constructs a FileWriterWithEncoding with a file encoding.
Method Summary
voidclose()
Close the stream.
voidflush()
Flush the stream.
static WriterinitWriter(File file, Object encoding, boolean append)
Initialise the wrapped file writer.
voidwrite(int idx)
Write a character.
voidwrite(char[] chr)
Write the characters from an array.
voidwrite(char[] chr, int st, int end)
Write the specified characters from an array.
voidwrite(String str)
Write the characters from a string.
voidwrite(String str, int st, int end)
Write the specified characters from a string.

Field Detail

out

private final Writer out
The writer to decorate.

Constructor Detail

FileWriterWithEncoding

public FileWriterWithEncoding(String filename, String encoding)
Constructs a FileWriterWithEncoding with a file encoding.

Parameters: filename the name of the file to write to, not null encoding the encoding to use, not null

Throws: NullPointerException if the file name or encoding is null IOException in case of an I/O error

FileWriterWithEncoding

public FileWriterWithEncoding(String filename, String encoding, boolean append)
Constructs a FileWriterWithEncoding with a file encoding.

Parameters: filename the name of the file to write to, not null encoding the encoding to use, not null append true if content should be appended, false to overwrite

Throws: NullPointerException if the file name or encoding is null IOException in case of an I/O error

FileWriterWithEncoding

public FileWriterWithEncoding(String filename, Charset encoding)
Constructs a FileWriterWithEncoding with a file encoding.

Parameters: filename the name of the file to write to, not null encoding the encoding to use, not null

Throws: NullPointerException if the file name or encoding is null IOException in case of an I/O error

FileWriterWithEncoding

public FileWriterWithEncoding(String filename, Charset encoding, boolean append)
Constructs a FileWriterWithEncoding with a file encoding.

Parameters: filename the name of the file to write to, not null encoding the encoding to use, not null append true if content should be appended, false to overwrite

Throws: NullPointerException if the file name or encoding is null IOException in case of an I/O error

FileWriterWithEncoding

public FileWriterWithEncoding(String filename, CharsetEncoder encoding)
Constructs a FileWriterWithEncoding with a file encoding.

Parameters: filename the name of the file to write to, not null encoding the encoding to use, not null

Throws: NullPointerException if the file name or encoding is null IOException in case of an I/O error

FileWriterWithEncoding

public FileWriterWithEncoding(String filename, CharsetEncoder encoding, boolean append)
Constructs a FileWriterWithEncoding with a file encoding.

Parameters: filename the name of the file to write to, not null encoding the encoding to use, not null append true if content should be appended, false to overwrite

Throws: NullPointerException if the file name or encoding is null IOException in case of an I/O error

FileWriterWithEncoding

public FileWriterWithEncoding(File file, String encoding)
Constructs a FileWriterWithEncoding with a file encoding.

Parameters: file the file to write to, not null encoding the encoding to use, not null

Throws: NullPointerException if the file or encoding is null IOException in case of an I/O error

FileWriterWithEncoding

public FileWriterWithEncoding(File file, String encoding, boolean append)
Constructs a FileWriterWithEncoding with a file encoding.

Parameters: file the file to write to, not null encoding the encoding to use, not null append true if content should be appended, false to overwrite

Throws: NullPointerException if the file or encoding is null IOException in case of an I/O error

FileWriterWithEncoding

public FileWriterWithEncoding(File file, Charset encoding)
Constructs a FileWriterWithEncoding with a file encoding.

Parameters: file the file to write to, not null encoding the encoding to use, not null

Throws: NullPointerException if the file or encoding is null IOException in case of an I/O error

FileWriterWithEncoding

public FileWriterWithEncoding(File file, Charset encoding, boolean append)
Constructs a FileWriterWithEncoding with a file encoding.

Parameters: file the file to write to, not null encoding the encoding to use, not null append true if content should be appended, false to overwrite

Throws: NullPointerException if the file or encoding is null IOException in case of an I/O error

FileWriterWithEncoding

public FileWriterWithEncoding(File file, CharsetEncoder encoding)
Constructs a FileWriterWithEncoding with a file encoding.

Parameters: file the file to write to, not null encoding the encoding to use, not null

Throws: NullPointerException if the file or encoding is null IOException in case of an I/O error

FileWriterWithEncoding

public FileWriterWithEncoding(File file, CharsetEncoder encoding, boolean append)
Constructs a FileWriterWithEncoding with a file encoding.

Parameters: file the file to write to, not null encoding the encoding to use, not null append true if content should be appended, false to overwrite

Throws: NullPointerException if the file or encoding is null IOException in case of an I/O error

Method Detail

close

public void close()
Close the stream.

Throws: IOException if an I/O error occurs

flush

public void flush()
Flush the stream.

Throws: IOException if an I/O error occurs

initWriter

private static Writer initWriter(File file, Object encoding, boolean append)
Initialise the wrapped file writer. Ensure that a cleanup occurs if the writer creation fails.

Parameters: file the file to be accessed encoding the encoding to use - may be Charset, CharsetEncoder or String append true to append

Returns: the initialised writer

Throws: NullPointerException if the file or encoding is null IOException if an error occurs

write

public void write(int idx)
Write a character.

Parameters: idx the character to write

Throws: IOException if an I/O error occurs

write

public void write(char[] chr)
Write the characters from an array.

Parameters: chr the characters to write

Throws: IOException if an I/O error occurs

write

public void write(char[] chr, int st, int end)
Write the specified characters from an array.

Parameters: chr the characters to write st The start offset end The number of characters to write

Throws: IOException if an I/O error occurs

write

public void write(String str)
Write the characters from a string.

Parameters: str the string to write

Throws: IOException if an I/O error occurs

write

public void write(String str, int st, int end)
Write the specified characters from a string.

Parameters: str the string to write st The start offset end The number of characters to write

Throws: IOException if an I/O error occurs

Copyright (c) 2002-2011 Apache Software Foundation