## net.sf.saxon.serialize
Class UTF8Writer

    java.lang.Object
      java.io.Writer
          net.sf.saxon.serialize.UTF8Writer

All Implemented Interfaces:
  Closeable, Flushable, Appendable

    public final class UTF8Writer

extends Writer

Specialized buffering UTF-8 writer. The main reason for custom version is to allow for efficient buffer recycling; the second benefit is that encoder has less overhead for short content encoding (compared to JDK default codecs).

Author:
  Tatu Saloranta

Field Summary
`protected OutputStream` `_out`
`protected byte[]` `_outBuffer`
`protected int` `_outBufferLast`
`protected int` `_outPtr`

Fields inherited from class java.io.Writer
`lock`

Constructor Summary
`UTF8Writer(OutputStream out)`
`UTF8Writer(OutputStream out, int bufferLength)`

Method Summary
`void` `close()`
`void` `flush()`
`void` `write(char[] cbuf)`
`void` `write(char[] cbuf, int off, int len)`
`void` `write(int c)`
`void` `write(String str)`
`void` `write(String str, int off, int len)`

Methods inherited from class java.io.Writer
`append, append, append`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### _out

    protected OutputStream _out

### _outBuffer

    protected byte[] _outBuffer

### _outBufferLast

    protected final int _outBufferLast

### _outPtr

    protected int _outPtr

Constructor Detail

### UTF8Writer

    public UTF8Writer(OutputStream out)

### UTF8Writer

    public UTF8Writer(OutputStream out,
                      int bufferLength)

Method Detail

### close

    public void close()
               throws IOException

  Specified by:
    `close` in interface `Closeable`
  Specified by:
    `close` in class `Writer`
  Throws:
    `IOException`

### flush

    public void flush()
               throws IOException

  Specified by:
    `flush` in interface `Flushable`
  Specified by:
    `flush` in class `Writer`
  Throws:
    `IOException`

### write

    public void write(char[] cbuf)
               throws IOException

  Overrides:
    `write` in class `Writer`
  Throws:
    `IOException`

### write

    public void write(char[] cbuf,
                      int off,
                      int len)
               throws IOException

  Specified by:
    `write` in class `Writer`
  Throws:
    `IOException`

### write

    public void write(int c)
               throws IOException

  Overrides:
    `write` in class `Writer`
  Throws:
    `IOException`

### write

    public void write(String str)
               throws IOException

  Overrides:
    `write` in class `Writer`
  Throws:
    `IOException`

### write

    public void write(String str,
                      int off,
                      int len)
               throws IOException

  Overrides:
    `write` in class `Writer`
  Throws:
    `IOException`

Copyright (c) 2004-2010 Saxonica Limited. All rights reserved.