Java XML Node to String toXMLString(Node node)

Here you can find the source of toXMLString(Node node)

Description

to XML String

License

Open Source License

Declaration

public static String toXMLString(Node node) throws Exception 

Method Source Code


//package com.java2s;
/*//w ww  .  j a  v a  2  s  .c  o  m
 *
 * This is free software; you can redistribute it and/or modify it
 * under the terms of the GNU Lesser General Public License as
 * published by the Free Software Foundation; either version 2.1 of
 * the License, or (at your option) any later version.
 *
 * This software is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this software; if not, write to the Free
 * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
 * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
 */

import java.io.ByteArrayOutputStream;
import java.io.OutputStream;

import org.w3c.dom.Node;

import org.w3c.dom.bootstrap.DOMImplementationRegistry;
import org.w3c.dom.ls.DOMImplementationLS;
import org.w3c.dom.ls.LSOutput;
import org.w3c.dom.ls.LSSerializer;

public class Main {
    public static String toXMLString(Node node) throws Exception {
        ByteArrayOutputStream baos = new ByteArrayOutputStream();
        writeToStream(baos, node);
        return new String(baos.toByteArray(), "UTF-8");
    }

    public static void writeToStream(OutputStream os, Node node) throws Exception {
        DOMImplementationRegistry registry = DOMImplementationRegistry.newInstance();
        DOMImplementationLS domImpl = (DOMImplementationLS) registry.getDOMImplementation("LS");
        LSSerializer serializer = domImpl.createLSSerializer();

        //
        LSOutput lso = domImpl.createLSOutput();
        lso.setByteStream(os);
        lso.setEncoding("UTF-8");
        serializer.getDomConfig().setParameter("format-pretty-print", Boolean.TRUE);
        serializer.write(node, lso);
    }
}

Related

  1. toXml(Node node)
  2. toXML(Node node)
  3. toXml(Node node, boolean keepHeader)
  4. toXMLString(final Node value)
  5. toXMLString(Node node)
  6. toXMLString(Node node)
  7. toXMLString(Node node, boolean header)
  8. writeXml(Node n, OutputStream os)
  9. xml(Node node)