æøå og XML og UTF-8
Jeg har problemer med serialisering af et DOM object til en String. Problemet er æøå i kombination med UTF-8. Efter serialisering er specialtegn som f.eks. <>& konverteret til entiteter, men æøå er ikke. Hvis jeg selv erstatter ø med f.eks. ø , konverterer den det til &oslash;Jeg har prøvet 2 forskellige metoder. :
****************** 1. eksempel *****************
TransformerFactory transFac = TransformerFactory.newInstance();
Transformer transformer = transFac.newTransformer();
Source xmlDomSource = new DOMSource(this.getDoc().getDocumentElement());
java.io.StringWriter wrt = new java.io.StringWriter();
StreamResult xmlResult = new StreamResult(wrt);
transformer.setOutputProperty(OutputKeys.ENCODING, "UTF-8");
transformer.transform(xmlDomSource, xmlResult);
String s = xmlResult.getWriter().toString();
****************** 2. eksempel *****************
OutputFormat fmt = new OutputFormat();
fmt.setEncoding("UTF-8");
XMLSerializer ser = new XMLSerializer(fmt);
java.io.StringWriter wrt = new java.io.StringWriter();
ser.setOutputCharStream(wrt);
ser.serialize(this.getDoc());
String s = wrt.toString();