Heim >Backend-Entwicklung >XML/RSS-Tutorial >Ausführliche Erläuterung von Beispielen für das Parsen von XML durch Java DOMParser
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!