`
chenzhuo1016
  • 浏览: 26435 次
  • 来自: ...
社区版块
存档分类
最新评论

jdom学习(3)

    博客分类:
  • xml
阅读更多
Jdom使用详解及实例(3)
接上一节:

4.Attribute类:

xml 代码
  1. <table width="100%" border="0"> <!---->table>  

String width = table.getAttributeValue("width");//获得attribute

int border = table.getAttribute("width").getIntValue();

table.setAttribute("vspace", "0");//设置attribute

table.removeAttribute("vspace");// 删除一个或全部attribute

table.getAttributes().clear();

5.命名空间操作

<xhtml:html></xhtml:html>

 xmlns:xhtml="http://www.w3.org/1999/xhtml">

<xhtml:title>Home Page</xhtml:title>

Namespace xhtml = Namespace.getNamespace("xhtml", "http://www.w3.org/1999/xhtml");

List kids = html.getChildren("title", xhtml);

Element kid = html.getChild("title", xhtml);

kid.addContent(new Element("table", xhtml));

6.XSLT格式转换

使用以下函数可对XSLT转换

最后如果你需要使用w3cDocument则需要转换一下。

public static Document transform(String stylesheetDocument in)

                                        throws JDOMException {

     try {

       Transformer transformer = TransformerFactory.newInstance()

                             .newTransformer(new StreamSource(stylesheet));

       JDOMResult out = new JDOMResult();

       transformer.transform(new JDOMSource(in), out);

       return out.getDeocument();

     }

     catch (TransformerException e) {

       throw new JDOMException("XSLT Trandformation failed", e);

     }

   }


四.用例:

1、生成xml文档:

java 代码
  1. public class WriteXML{  
  2.   
  3.     public void BuildXML() throws Exception {  
  4.   
  5.         Element root,student,number,name,age;          
  6.   
  7.         root = new Element("student-info"); //生成根元素:student-info  
  8.   
  9.         student = new Element("student"); //生成元素:student(number,name,age)                              
  10.   
  11.         number = new Element("number");  
  12.   
  13.         name = new Element("name");  
  14.   
  15.         age = new Element("age");  
  16.   
  17.         Document doc = new Document(root); //将根元素植入文档doc中  
  18.   
  19.         number.setText("001");  
  20.   
  21.         name.setText("lnman");  
  22.   
  23.         age.setText("24");  
  24.   
  25.         student.addContent(number);  
  26.   
  27.         student.addContent(name);  
  28.   
  29.         student.addContent(age);  
  30.   
  31.         root.addContent(student);  
  32.   
  33.         Format format = Format.getCompactFormat();  
  34.   
  35.         format.setEncoding("gb2312"); //设置xml文件的字符为gb2312  
  36.   
  37.         format.setIndent("    "); //设置xml文件的缩进为4个空格  
  38.   
  39.         XMLOutputter XMLOut = new XMLOutputter(format);//元素后换行一层元素缩四格  
  40.   
  41.         XMLOut.output(doc, new FileOutputStream("studentinfo.xml"));   
  42.   
  43. }  
  44.   
  45.     public static void main(String[] args) throws Exception {  
  46.   
  47.         WriteXML w = new WriteXML();  
  48.   
  49.         System.out.println("Now we build an XML document .....");  
  50.   
  51.         w.BuildXML();  
  52.   
  53.         System.out.println("finished!");  
  54.   
  55. }  
  56.   
  57. }  

生成的xml文档为:

xml 代码
  1. <?xml version="1.0" encoding="gb2312"?>  
  2.   
  3. <student-info>  
  4.   
  5.     <student>  
  6.   
  7.         <number>001</number>  
  8.   
  9.         <name>lnman</name>  
  10.   
  11.         <age>24</age>  
  12.   
  13.     </student>  
  14.   
  15. </student-info>  

创建XML文档2

java 代码
 
  1. public class CreateXML {  
  2.   
  3.  public void Create() {  
  4.   
  5.   try {  
  6.   
  7.    Document doc = new Document();     
  8.   
  9.    ProcessingInstruction pi=new ProcessingInstruction("xml-stylesheet","type="text/xsl" href="test.xsl"");  
  10.   
  11.    doc.addContent(pi);     
  12.   
  13.    Namespace ns = Namespace.getNamespace("http://www.bromon.org" );  
  14.   
  15.    Namespace ns2 = Namespace.getNamespace("other""http://www.w3c.org" );  
  16.   
  17.    Element root = new Element("根元素", ns);  
  18.   
  19.    root.addNamespaceDeclaration(ns2);  
  20.   
  21.    doc.setRootElement(root);  
  22.   
  23.    Element el1 = new Element("元素一");  
  24.   
  25.    el1.setAttribute("属性""属性一");     
  26.   
  27.    Text text1=new Text("元素值");  
  28.   
  29.             Element em = new Element("元素二").addContent("第二个元素");  
  30.   
  31.    el1.addContent(text1);  
  32.   
  33.             el1.addContent(em);              
  34.   
  35.             Element el2 = new Element("元素三").addContent("第三个元素");  
  36.   
  37.             root.addContent(el1);  
  38.   
  39.             root.addContent(el2);              
  40.   
  41.             //缩进四个空格,自动换行,gb2312编码  
  42.   
  43.             XMLOutputter outputter = new XMLOutputter("  "true,"GB2312");  
  44.   
  45.             outputter.output(doc, new FileWriter("test.xml"));  
  46.   
  47.         }catch(Exception e)  {  
  48.   
  49.          System.out.println(e);  
  50.   
  51.         }  
  52.   
  53.     }      
  54.   
  55.     public static void main(String args[]) {  
  56.   
  57.      new CreateXML().Create();  
  58.   
  59.     }      
  60.   
  61. }  



分享到:
评论

相关推荐

    jdom学习读取xml文件

    jdom学习读取xml文件资料小列子,非常简单明了。

    jdom学习读取xml文件.files

    XML(eXtensible Markup Language)是一种用于存储和传输数据的标准格式,特别是在Java应用程序和Spring框架中...通过阅读提供的`jdom.doc`文档和`jdom学习读取xml文件.files`中的示例,你可以更全面地掌握这些知识。

    JDom学习资料

    **JDom学习资料详解** JDom,全称为Java Document Object Model,是一款专为Java设计的DOM(Document Object Model)解析库。它允许开发者以一种高效、便捷的方式处理XML文档,提供了一种基于Java的API来创建、修改...

    JDOM 帮助文档!

    3. **转换(Transformations)**:JDOM与XSLT(XSL Transformations)结合,可以实现XML文档之间的转换。通过`javax.xml.transform.Transformer`类,可以将XML文档转换成其他格式。 总的来说,JDOM为Java开发者提供...

    jdom源码+jdom.jar

    源码文件jdom-src.zip则提供了JDOM的完整源代码,这对于学习和理解JDOM的工作原理,或者进行定制和扩展非常有用。源代码包含了大量的注释,可以帮助开发者深入理解JDOM的内部机制,例如如何解析XML文档,如何构建XML...

    jdom的两种版本jar包集合

    1. **jdom-2.0.6-javadoc.jar**: 包含了JDOM 2.0.6版本的API文档,开发者可以通过查看这个JAR来了解JDOM的所有类、接口和方法,便于学习和使用。 2. **jdom-2.0.6-sources.jar**: 提供了JDOM 2.0.6的源代码,开发者...

    jdom-1.1.2&jdom帮助文档

    对于开发者来说,这是了解和学习 JDOM 的重要资源。文档详细解释了每个类、接口和方法的用法,帮助开发者快速上手。 总结,JDOM 1.1.2 是一个强大且易于使用的 XML 处理库,特别适合 Java 开发者。其提供的 API ...

    JDOM1.1(Jdom文档)

    3. **简单API**:JDOM提供了一套直观的API,允许开发者通过Element、Attribute、Namespace等对象直接操作XML结构。 4. **源码及API文档**:JDOM1.1不仅包含了jar包,还提供了CHM格式的API文档和源代码,方便开发者...

    java org.jdom 包下载

    1. **jdom-2.0.5-javadoc.jar**:这是JDOM的API文档,开发者可以通过查看这个JAR文件中的文档来了解每个类和方法的详细信息,这对于学习和使用JDOM非常有帮助。 2. **jdom-2.0.5-sources.jar**:包含了JDOM库的源...

    jdom.rar内含多个jdom包

    3. **帮助文档**:这可能包括API文档、用户指南或者教程,它们详细解释了JDOM的各种类和方法,以及如何有效地使用这些工具。对于初学者来说,这是一份非常宝贵的资源,可以帮助他们理解JDOM的工作原理和最佳实践。 ...

    Jdom教程 Jdom教程.pdf

    ### JDOM教程知识点详解 #### 一、JDOM简介 ...通过上述知识点的学习,我们可以了解到JDOM的基本使用方法,包括创建XML文档、解析XML文档以及使用XPath进行查询等功能。这对于开发者来说是非常有价值的工具。

    jdom英文帮助文档

    《JDOM英文帮助文档》是Java开发者不可或缺的参考资料,尤其对于初学者而言,它提供了全面且深入的JDOM库知识。JDOM,全称为Java Document Object Model,是Java平台上的...总之,这份文档是学习和应用JDOM的宝贵资源。

    jdom的源代码文档

    总的来说,通过对JDOM源代码的深入学习,不仅可以提升你对XML处理的理解,还能帮助你更好地利用JDOM进行XML数据的处理,提高开发效率,避免潜在的问题。无论你是初次接触JDOM,还是希望深化对它的认识,研究源代码都...

    jdom的帮助文档 jdom的帮助文档

    在“jdom的帮助文档”中,我们可以深入学习JDOM的核心概念和使用方法。首先,JDOM通过构建树形结构来表示XML文档,每个节点可以代表XML文档的元素、属性、文本、注释等。这种结构化表示方式使得我们可以方便地遍历和...

    jdom - 2.0.1

    - **jdom-2.0.1-sources.jar**:包含了 JDOM 的源代码,方便开发者查看和学习实现细节。 - **jdom-2.0.1-contrib.jar**:可能包含了一些额外的贡献代码或示例。 - **lib**:可能是一个包含依赖库的目录,确保 JDOM...

    jdom-1.1.1 和API

    总之,JDOM是Java开发者处理XML的得力工具,它的API文档和示例能加速你的学习过程,使你能够更高效地在项目中利用XML数据。无论你是新手还是经验丰富的开发者,理解并掌握JDOM都将对你的XML编程技能大有裨益。

    jdom介绍及使用指南

    ### JDOM介绍及使用指南 #### 一、JDOM包概览 JDOM是一个轻量级的Java XML API,它提供了简洁的API用于处理XML文档。JDOM的主要优点在于其...对于初学者来说,JDOM的学习曲线相对平缓,同时也能满足高级用户的需求。

    jdom-1.1.1 下载

    `jdom-test-1.1.1.zip`文件包含了这些测试代码,对于学习JDOM的使用和理解其内部机制具有很高的价值。 总之,JDOM 1.1.1为Java开发者提供了一种强大的工具,用于处理XML文档。它的面向对象设计、XPath支持以及丰富...

    jdom1.1.src

    总的来说,JDOM1.1是Java环境下处理XML文档的强大工具,其源码的学习不仅可以帮助我们掌握XML解析和操作的基本原理,还能提高我们在实际项目中应用XML的能力。通过深入分析JDOM1.1的源码,我们可以更好地理解Java与...

    JDOM API文档资源

    3. **解析XML文档**:JDOM提供了SAXBuilder和DOMBuilder,分别基于SAX(Simple API for XML)和DOM(Document Object Model)解析器。这两个类可以将XML文件加载到JDOM的Document对象中,然后通过Document对象进行...

Global site tag (gtag.js) - Google Analytics