ンᅧᅭ%ンᅨ&
과 같은 문자열이 포함 된 문서를 직렬화해야하는 경우가 있습니다. 그것을 직렬화하는 동안 다음과 같은 예외가 발생합니다 :직렬화 중 잘못된 xml 문자 처리
java.io.IOException: The character '' is an invalid XML character
해결 방법과 함께이 문자열을 직렬화 할 수있는 방법이 있습니까?
StringWriter stringOut = new StringWriter();
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docFactory.newDocumentBuilder();
Document doc = docBuilder.newDocument();
Element rootElement = doc.createElement("company");
doc.appendChild(rootElement);
String xml = "ンᅧᅭ%ンᅨ&";
//String xml = "ンᅧᅭ%ンᅨ&";
Element junk = doc.createElement("replyToQ");
junk.appendChild(doc.createCDATASection(xml));
//junk.appendChild(doc.createTextNode(stripNonValidXMLCharacters(xml)));
rootElement.appendChild(junk);
//org.w3c.dom.Document doc = this.toDOM();
//Serialize DOM
OutputFormat format = new OutputFormat(doc,"UTF-8",true);
format.setIndenting(false);
format.setLineSeparator("");
format.setPreserveSpace(true);
format.setOmitXMLDeclaration(false);
XMLSerializer serial = new XMLSerializer(stringOut, format);
// As a DOM Serializer
serial.asDOMSerializer();
serial.serialize(doc.getDocumentElement());
어떤 언어입니까? –
UTF-8 대신 다른 인코딩을 시도 할 수 있습니다. 시도 할 수있는 목록이 있습니다 : http://en.wikipedia.org/wiki/ISO/IEC_2022#ISO.2FIEC_2022_character_sets. – splrs