The example below shows how xmlenc is typically used. The output to be generated is as follows:
<?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html lang="en"> <head><title>Example document</title></head><body class="SummaryPage"> <h1>Example document</h1></body></html>
This XML document can be produced using the specified code:
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.Writer;
import org.znerd.xmlenc.XMLOutputter;
public class Main {
   public final static void main(String[] args) throws IOException {
      final String encoding = "iso-8859-1";
      Writer writer = new OutputStreamWriter(System.out, encoding);
      XMLOutputter outputter = new XMLOutputter(writer, encoding);
      outputter.declaration();
      outputter.whitespace("\n");
      outputter.dtd("html",
                    "-//W3C//DTD XHTML 1.0 Transitional//EN",
                    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd");
      outputter.whitespace("\n\n");
      outputter.startTag("html");
      outputter.attribute("lang", "en");
      outputter.whitespace("\n");
      outputter.startTag("head");
      outputter.startTag("title");
      outputter.pcdata("Example document");
      outputter.endTag(); // title
      outputter.endTag(); // head
      outputter.startTag("body");
      outputter.attribute("class", "SummaryPage");
      outputter.whitespace("\n");
      outputter.startTag("h1");
      outputter.pcdata("Example document");
      outputter.endDocument(); // closes: h1, body and html
      outputter.getWriter().flush();
   }
}