I'm using the javax.xml.transform.Transformer class to perform some XSLT translations, like so:
TransformerFactory factory = TransformerFactory.newInstance();
StreamSource source = new StreamSource(TRANSFORMER_PATH);
Transformer transformer = factory.newTransformer(source);
StringWriter extractionWriter = new StringWriter();
String xml = FileUtils.readFileToString(new File(sampleXmlPath));
transformer.transform(new StreamSource(new StringReader(xml)),
new StreamResult(extractionWriter));
System.err.println(extractionWriter.toString());
However, no matter what I do I can't seem to avoid having the transformer convert any tabs that were in the source document in to their character entity equivalent (	
). I have tried both:
transformer.setParameter("encoding", "UTF-8");
and:
transformer.setOutputProperty(OutputKeys.ENCODING, "UTF-8");
but neither of those help. Does anyone have any suggestions? Because:
					<MyElement>
looks really stupid (even if it does work).