Win a copy of The Way of the Web Tester: A Beginner's Guide to Automating Tests this week in the Testing forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Remove Indentation during Transformation

Sanjit Singh
Posts: 27
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Everyone,
Below you will find a method that takes a Document object as a parameter and returns a byte array.
private byte[] xmlToBytes(Document document) {
try {
TransformerFactory tfactory = TransformerFactory.newInstance();
Source source = new DOMSource(document);
ByteArrayOutputStream bout = new ByteArrayOutputStream();
Result result = new StreamResult(bout);
Transformer transformer = tfactory.newTransformer();
transformer.setOutputProperty(OutputKeys.INDENT, "no");
transformer.transform(source, result);
return bout.toByteArray();
}catch(Exception e) {
return null;
You might have noticed that I set OutputKeys.INDENT to "no" during transformation, but this doesn�t seem to have an effect. I would like to get a byte array containing xml, but without any carriage returns or whitespaces (simply the whole xml without any gaps in between).
Can somebody please help me out? Is there a way to convert a dom to a byte array without carriage returns/whitespaces/blankspaces?
Thanks in advance and looking forward to some replies!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic