美文网首页我爱编程
xml基础和格式

xml基础和格式

作者: _98k | 来源:发表于2017-12-21 16:22 被阅读0次

    XML基础

    1)XML的作用

    1.1作为软件配置文件

    1.2作为小型的“数据库”

    2)XML语法(由w3c组织规定的)

    标签:

    标签名不能以数字开头,中间不能有空格,区分大小写。有且仅有一个根标签。

    属性:

    可有多个属性,但属性值必须用引号(单引号或双引号)包含,但不能省略,也不能单双混用。

    文档声明:

    encoding="utf-8": 打开或解析xml文档时的编码

    注意:

    保存xml文档时的编码 和 解析xml文档时的编码要保持一致,才能避免中文乱码问题!

    3)XML解析

    程序读取或操作xml文档

    两种解析方式:DOM解析vs   SAX解析

    DOM解析原理:一次性把xml文档加载成Document树,通过Document对象得到节点对象,通过节点对象访问xml文档内容(标签,属性,文本,注释)。

    Dom4j工具(基于DOM解析原理):

    读取xml文档:

    Document doc = new SAXReader().read("xml文件");

    节点:

    nodeIterator();所有节点

    标签:

    element("名称")指定名称的第一个子标签对象

    elementIterator("名称");指定名称的所有子标签对象

    elements();所有子标签对象

    属性:

    attributeValue(“名称”) 指定名称的属性值

    attribute("名称")指定名称的属性对象

    getName()属性名称

    getValue()  属性值

    atributeIterator()所有属性对象(Iterator)

    attributes()所有属性对象(List)

    文本:

    getText()  得到当前标签的文本

    elementText("子标签名称")得到子标签的文本

    今天的目标:Dom4J修改xml   + xPath技术+ SAX解析+ XML约束

    2 Dom4j修改xml文档

    2.1写出内容到xml文档

    XMLWriter writer = new XMLWriter(OutputStream, OutputForamt)

    wirter.write(Document);

    2.2修改xml文档的API

    增加:

    DocumentHelper.createDocument()增加文档

    addElement("名称")增加标签

    addAttribute("名称",“值”)增加属性

    修改:

    Attribute.setValue("值")修改属性值

    Element.addAtribute("同名的属性名","值")修改同名的属性值

    Element.setText("内容")修改文本内容

    删除

    Element.detach();删除标签

    Attribute.detach();删除属性

    3 xPath技术

    3.1引入

    问题:当使用dom4j查询比较深的层次结构的节点(标签,属性,文本),比较麻烦!!!

    3.2 xPath作用

    主要是用于快速获取所需的节点对象。

    3.3在dom4j中如何使用xPath技术

    1)导入xPath支持jar包 。jaxen-1.1-beta-6.jar

    2)使用xpath方法

    List  selectNodes("xpath表达式");查询多个节点对象

    Node       selectSingleNode("xpath表达式");查询一个节点对象

    3.4 xPath语法

    /绝对路径      表示从xml的根位置开始或子元素(一个层次结构)

    //相对路径       表示不分任何层次结构的选择元素。

    *通配符         表示匹配所有元素

    []条件           表示选择什么条件下的元素

    @属性            表示选择属性节点

    and关系表示条件的与关系(等价于&&)

    text()文本           表示选择文本内容

    相关文章

      网友评论

        本文标题:xml基础和格式

        本文链接:https://www.haomeiwen.com/subject/nktoixtx.html