Heim >Backend-Entwicklung >XML/RSS-Tutorial >Ausführliche Erläuterung von Beispielen für das Parsen von XML durch Java DOMParser

Ausführliche Erläuterung von Beispielen für das Parsen von XML durch Java DOMParser

Y2J
Y2JOriginal
2017-04-27 13:31:092415Durchsuche

import java.io.*;
import java.net.*;
import org.w3c.dom.*;
import org.w3c.dom.Node.*;
 
import oracle.xml.parser.v2.*;
 
/**
 * -----------------------------------------------------------------------------
 * Demonstrate how to use DOM.
 *
 * @version 1.0
 * @author  Jeffrey M. Hunter  (jhunter@idevelopment.info)
 * @author  http://www.idevelopment.info
 * -----------------------------------------------------------------------------
 */
 
public class DOMExample {
 
    /*
     * +---------------------------------------------+
     * | METHOD: main                                |
     * +---------------------------------------------+
     */
    static public void main(String[] argv) {
        try {
 
            if (argv.length != 1) {
                // must pass in the name of the XML file
                System.err.println("Usage: java DOMExample filename");
                System.exit(1);
            }
 
            // Get an instance of the parser
            DOMParser parser = new DOMParser();
 
            // Generate a URL from the filename
            URL url = createURL(argv[0]);
 
            // Set various parser options; validation on,
            // warnings shown, error stream set to stderr.
            parser.setErrorStream(System.err);
            parser.setValidationMode(true);
            parser.showWarnings(true);
            // parse the document
            parser.parse(url);
 
            // Obtain the document
            XMLDocument doc = parser.getDocument();
 
            // print document elements
            System.out.print("The elements are: ");
            printElements(doc);
 
            // print document elements attributes
            System.out.println("The attributes of each element are: ");
            printElementAttributes(doc);
 
        } catch (Exception e) {
            System.out.println(e.toString());
        }
    }
 
    /*
     * +---------------------------------------------+
     * | METHOD: printElements                       |
     * +---------------------------------------------+
     */
    static void printElements(Document doc) {
 
        NodeList nodelist = doc.getElementsByTagName("*");
        Node     node;
 
        for (int i=0; i<nodelist.getLength(); i++) {
            node = nodelist.item(i);
            System.out.print(node.getNodeName() + " ");
        }
 
        System.out.println();
 
    }
 
    /*
     * +---------------------------------------------+
     * | METHOD: printElementAttributes              |
     * +---------------------------------------------+
     */
    static void printElementAttributes(Document doc) {
 
        NodeList      nodelist = doc.getElementsByTagName("*");
        Node          node;
        Element       element;
        NamedNodeMap  nnm = null;
 
        String attrname;
        String attrval;
        int    i, len;
 
        len = nodelist.getLength();
 
        for (int j=0; j < len; j++) {
            element = (Element)nodelist.item(j);
            System.out.println(element.getTagName() + ":");
            nnm = element.getAttributes();
        }
 
        if (nnm != null) {
            for (i=0; i<nnm.getLength(); i++) {
                node = nnm.item(i);
                attrname = node.getNodeName();
                attrval  = node.getNodeValue();
                System.out.println(" " + attrname + " = " + attrval);
            }
        }
 
        System.out.println();
 
    }
 
    /*
     * +---------------------------------------------+
     * | METHOD: createURL                           |
     * +---------------------------------------------+
     */
    static URL createURL(String filename) {
 
        URL url = null;
 
        try {
            url = new URL(filename);
        } catch (MalformedURLException ex) {
            try {
                File f = new File(filename);
                url = f.toURL();
            } catch (MalformedURLException e) {
                System.out.println("Cannot create URL for: " + filename);
                System.exit(0);
            }
        }
 
        return url;
 
    }
 
}

Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung von Beispielen für das Parsen von XML durch Java DOMParser. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn