Java XML String Transform parseXmlFile(String filename, boolean validating, boolean namespaceAware)

Here you can find the source of parseXmlFile(String filename, boolean validating, boolean namespaceAware)

Description

parse Xml File

License

Open Source License

Declaration

public static Document parseXmlFile(String filename, boolean validating, boolean namespaceAware)
            throws SAXException, IOException, ParserConfigurationException 

Method Source Code

//package com.java2s;
/*******************************************************************************
 * Copyright (c) 2010 Robert "Unlogic" Olofsson (unlogic@unlogic.se).
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the GNU Lesser Public License v3
 * which accompanies this distribution, and is available at
 * http://www.gnu.org/licenses/lgpl-3.0-standalone.html
 ******************************************************************************/

import org.w3c.dom.Document;

import org.xml.sax.SAXException;

import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.transform.OutputKeys;
import javax.xml.transform.Result;
import javax.xml.transform.Source;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.TransformerFactoryConfigurationError;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.io.StringWriter;
import java.io.Writer;
import java.net.URI;

public class Main {
    public static Document parseXmlFile(String filename, boolean validating, boolean namespaceAware)
            throws SAXException, IOException, ParserConfigurationException {

        return parseXmlFile(new File(filename), validating, namespaceAware);
    }/*from ww  w. j  a v  a 2s  .  c o m*/

    public static Document parseXmlFile(File file, boolean validating, boolean namespaceAware)
            throws SAXException, IOException, ParserConfigurationException {

        DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();

        factory.setNamespaceAware(namespaceAware);
        factory.setValidating(validating);

        Document doc = factory.newDocumentBuilder().parse(file);

        return doc;
    }

    public static Document parseXmlFile(URI uri, boolean validating)
            throws SAXException, IOException, ParserConfigurationException {
        DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
        factory.setValidating(validating);
        Document doc = factory.newDocumentBuilder().parse(uri.toString());
        return doc;
    }

    public static Document parseXmlFile(File f, boolean validating)
            throws SAXException, IOException, ParserConfigurationException {
        DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
        factory.setValidating(validating);
        Document doc = factory.newDocumentBuilder().parse(f);
        return doc;
    }

    public static Document parseXmlFile(InputStream stream, boolean validating)
            throws SAXException, IOException, ParserConfigurationException {
        DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
        factory.setValidating(validating);
        Document doc = factory.newDocumentBuilder().parse(stream);
        return doc;
    }

    public static String toString(Document doc, String encoding, boolean indent)
            throws TransformerFactoryConfigurationError, TransformerException {
        Source source = new DOMSource(doc);
        StringWriter sw = new StringWriter();
        Result result = new StreamResult(sw);

        Transformer xformer = TransformerFactory.newInstance().newTransformer();
        xformer.setOutputProperty(OutputKeys.ENCODING, encoding);

        if (indent) {
            xformer.setOutputProperty(OutputKeys.INDENT, "yes");
        }

        xformer.transform(source, result);

        return sw.getBuffer().toString();
    }

    public static void toString(Document doc, String encoding, Writer w, boolean indent)
            throws TransformerFactoryConfigurationError, TransformerException {
        Source source = new DOMSource(doc);
        Result result = new StreamResult(w);

        Transformer xformer = TransformerFactory.newInstance().newTransformer();
        xformer.setOutputProperty(OutputKeys.ENCODING, encoding);

        if (indent) {
            xformer.setOutputProperty(OutputKeys.INDENT, "yes");
        }

        xformer.transform(source, result);
    }
}

Related

  1. loadSourceFromURL(String systemID)
  2. mergeXml(String... xmlSources)
  3. normXML(String s)
  4. parseEventsToXML(String module, Hashtable keyvalues)
  5. parseToString(final Node node)
  6. readFile(String fileName)
  7. readFile(String systemId)
  8. readURL(String urlStr)
  9. readXMLFile(String xmlFileName)