XML是描述结构化信息的技术,XML格式能偶表达层次结构和重复的元素而不会被曲解。
XML和HTML格式都是古老的标准通用标记语言(SGML)的衍生语言。 XML和HTML的区别,大小写的区分等等。 通常使用DOM或者SAX来解析XML,如果在节省内存或者只是对某些元素感兴趣,而不关心他们的上下文,那么可以考虑使用SAX。 关于DOM,要读入一个XML文档,首先需要一个DocumentBuilder对象,可以从DocumentBuilderFactory中得到这个对象,例如: DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); 然后从文件中读入某个文档: File f = ... Document doc = builder.parse(f); 或者,可以用一个URL: URL u = ... Document doc = builder.parse(u); 可以通过getDocumentElement方法来分析文档的内容,他将返回根元素。 Element root = doc.getDocumentElement(); 分析子元素可以使用root.getChildNodes方法,但要注意。例如,假设如下文档: <font> <name>Helvetica</name> <size>36</size> </font> 这时候会分析出5个元素来: <font>和<name>之间的空白区域 name元素 </name>和<size>之间的空白区域 size元素 </size>和</font>之间的空白区域 解决方法是: for (int i = 0; i < nodes.getLength(); i++) { Node node = nodes.item(i); if (node instanceof Element) { Element element = (Element) node; System.out.println(element.getTextContent()); } } |
|