Jdom解析xml文件

quanzhong 贡献于2011-12-21

作者 微软用户  创建于2008-08-23 08:50:00   修改者微软用户  修改于2008-08-23 08:57:00字数2702

文档摘要:java操作xml用的最多的应该是jdom开源包了,它是document模式的(虽然它用到了SAX模式)。
关键词:

 Jdom解析xml文件 java操作xml用的最多的应该是jdom开源包了,它是document模式的(虽然它用到了SAX模式),主要的API如下: 1:SAXBuilder.build(FileInputStream("*.xml");获取xml文件,返回Document实例(读xml文件) 2:Element.getChildren();获取该节点的所有字节点,返回List 3:Element.getChild("child节点名");获取字节点实例 4:Element.getAttribute("属性名");获取该节点属性的value值(平面式节点) 5:Element.getText();获取该节点的节点文本 6:Document(new Element("根节点名"));新建xml文件文档 7:Document.getRootNote();获取根节点 8:Element.addContent(Element);添加子节点 9:Element.setAttribute("属性名","属性值");添加节点属性 10:Element.setText("文本值");添加该节点的文本值 11:xmloutPutter(Format.getPrettyFormat()) 12:xmlOutPutter.output(Document,FileOutPutStream);这两句用来输出xml文件,其中Document为填好内容的xml文档对象,FileoutPutStream为文本输出流)   用以上的API基本可以完成所有读写xml文件的功能了,jdom封装的很不错,类很好理解,上手也很快。 唯一的不足是它不是严格校验的xml解析器,即你在getAttribute某个属性的时候,jdom并不会根据该xml文件的DTD去校验该属性是否合法,也就是说你的xml文件中完全可以不带DTD=""的索引,因为jdom不会去加载它。实际上我们的项目中也没有谁会去把我们定义的xml文件格式所表示的数据结构写成DTD定义文件,虽然从理论上它应该是和xml文件一起出现的:)  例子: 在Java中用JDOM才操作xml文件很方便,需要的代码量也比其它XML解析器要少的多。下面用一个简单的例子来说明JDOM读写xml的最基本的步骤。假设已经有如下的xml文件student.xml:                Tom         14          12345678       下面读取该文件中的内容并打印输出: SAXBuilder builder = new SAXBuilder(false); Document document = null; try {      document = builder.build("student.xml");   } catch (JDOMException e) {    e.printStackTrace();   } catch (IOException e) {    e.printStackTrace();   }     Element root = document.getRootElement();  List students = root.getChildren();  for( int i=0; i           Tom       14       12345678               Mary       18       42483433    

下载文档到电脑,查找使用更方便

文档的实际排版效果,会与网站的显示效果略有不同!!

需要 5 金币 [ 分享文档获得金币 ] 1 人已下载

下载文档