Prevent .transform transformer (source, result) from escaping a special character

I am updating node and xml text content with a DOM parser. To save this DOM parser, I use the transformer.transform method. The following is sample code.

String xmlText = "<uc>abcd><name>mine</name>efgh\netg<tag>sd</tag></uc>";
        DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance();
        DocumentBuilder documentBuilder = documentBuilderFactory.newDocumentBuilder();
        InputSource inStream = new InputSource();
        inStream.setCharacterStream(new StringReader(xmlText));
        Document document = documentBuilder.parse(inStream);
        Node node = document.getDocumentElement();      
        node.normalize();
        NodeList childNodes = node.getChildNodes();
        for(int i=0; i<childNodes.getLength(); i++) {
            if(childNodes.item(i).getNodeType() == Node.TEXT_NODE) {
                System.out.println(childNodes.item(i).getTextContent());
                childNodes.item(i).setTextContent("123>");
            }
        }
        TransformerFactory tFactory = TransformerFactory.newInstance();
        Transformer transformer = tFactory.newTransformer();
        transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "yes");
        transformer.setOutputProperty(OutputKeys.ENCODING, "US-ASCII");
        transformer.setOutputProperty(OutputKeys.INDENT, "yes");
        DOMSource source = new DOMSource( document );
        OutputStream xml = new ByteArrayOutputStream();
        StreamResult result = new StreamResult( xml  );

        transformer.transform( source, result );
        String formattedXml = xml.toString();
        System.out.println(formattedXml);

, " > ", transformer.transform & g t; . - . StringEscapeUtils.unescapeXml(). , xml & g t;. , & g t; xml, . , - .

+3

All Articles