Java : Convert formatted xml file to one line string
Solution 1:
//filename is filepath string
BufferedReader br = new BufferedReader(new FileReader(new File(filename)));
String line;
StringBuilder sb = new StringBuilder();
while((line=br.readLine())!= null){
sb.append(line.trim());
}
using StringBuilder is more efficient then concat http://kaioa.com/node/59
Solution 2:
Run it through an XSLT identity transform with <xsl:output indent="no">
and <xsl:strip-space elements="*"/>
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output indent="no" />
<xsl:strip-space elements="*"/>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
It will remove any of the non-significant whitespace and produce the expected output that you posted.