当前位置: 首页 > wzjs >正文

网站建设公司方维二维码生成网址链接

网站建设公司方维,二维码生成网址链接,天眼查公司查询企业查询,宜章泰鑫建设有限公司网站xml 1 概述 xml:即可扩展标记语言,xml是互联网数据传输的重要工具,它可以跨越互联网任何的平台,不受编程语言和操作系统的限制。 它允许用户自定义标签。一个标签用于描述一段数据;一个标签可以分为开始标签和结束标签&#xf…

xml

1 概述

xml:即可扩展标记语言,xml是互联网数据传输的重要工具,它可以跨越互联网任何的平台,不受编程语言和操作系统的限制。

它允许用户自定义标签。一个标签用于描述一段数据;一个标签可以分为开始标签和结束标签,在开始标签和结束标签之间,又可以使用其他标签描述其他数据,以此来实现数据关系的描述。

2 语法

2.1 组成

一个XML文件分为如下几部分内容:
1.文档声明
2.元素
3.属性
4.注释
5.CDATA区、特殊字符
6.处理指令(processing instruction)

2.2 文档声明
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>

version –文档符合XML1.0规范,我们学习1.0
encoding –文档字符编码,比如”GB2312”或者”UTF-8”
standalone –文档定义是否独立使用
standalone=”no”为默认值。yes代表是独立使用,而no代表不是独立使用

2.3 元素

每个XML文档必须有且只有一个根元素

写法:

<!--包含内容-->
<a></a>
<!--不包含内容-->
<a/>
<!--下面两个元素意义不同-->
<stu>xiaoming</stu>
<stu>xiaoming
</stu>

命名规范:

  • 区分大小写;
  • 不能以数字或下划线”_”开头;
  • 元素内不能包含空格;
  • 称中间不能包含冒号(:)。

实体字符

实体字符代替
<<
>>
&&
'
""

CDATA

CDATA节中可以输入任意字符(除]]>外),但是不能嵌套!。

<stu id="001"><name>杨过</name> <sex></sex><age>20</age><intro><![CDATA[ad<<&$^#*k]]></intro>
</stu>

dom4j

1 概述

DOM4J是 dom4j.org 出品的一个开源 XML 解析包。DOM4J应用于 Java 平台,采用了 Java 集合框架并完全支持 DOM,SAX 和 JAXP。

2 使用

读取XML文档

@Test@SneakyThrowsvoid test1(){SAXReader saxReader = new SAXReader();// 读取xml// 注意:有多种方式读取Document document = saxReader.read("http://localhost:8080/1600914750685.xml");document = saxReader.read("e:/test/test.xml");// 获得xml字符串String asXML = document.asXML();System.out.println(asXML);// 获得根节点Element rootElement = document.getRootElement();// 新增节点及其数据Element menuElement = rootElement.addElement("menu");Element endNameElement = menuElement.addElement("endName");endNameElement.setText("make");}

document相关

   @Test@SneakyThrowsvoid testx(){SAXReader saxReader = new SAXReader();// 读取xml// 注意:有多种方式读取// Document document = saxReader.read("http://localhost:8080/1600914750685.xml");Document document = saxReader.read("e:/test/test.xml");// 创建对象document = DocumentHelper.createDocument();// 解析文本获得对象document = DocumentHelper.parseText("<a>hehe</a>");}

写入xml

 @Test@SneakyThrowsvoid test2(){SAXReader saxReader = new SAXReader();Document document = saxReader.read("e:/test/test.xml");FileOutputStream fo = new FileOutputStream("e:/test/test2.xml");OutputStreamWriter ow = new OutputStreamWriter(fo, "gbk");// 设置输出格式OutputFormat outputFormat = new OutputFormat();outputFormat.setEncoding("gbk");XMLWriter xmlWriter = new XMLWriter(ow,outputFormat);xmlWriter.write(document);xmlWriter.close();}

创建xml

    @Test@SneakyThrowsvoid test3(){// 创建对象Document document = DocumentHelper.createDocument();Element rootElement = document.addElement("books"); // 建立跟节点rootElement.addComment("测试,这是跟"); // 增加注释Element book = rootElement.addElement("book"); // 增加子节点book.addAttribute("show","true"); // 增加属性book.setText("三国演义"); // 增加文本内容XMLWriter xmlWriter = new XMLWriter(new FileWriter(new File("e:/test/test3.xml")));xmlWriter.write(document);xmlWriter.close();}

属性操作

  @Test@SneakyThrowsvoid testx(){SAXReader saxReader = new SAXReader();Document document = saxReader.read("e:/test/test.xml");Element rootElement = document.getRootElement();// 取得节点的属性Attribute attribute = rootElement.attribute("TradeCode");// 取得节点的属性值String tradeCode = rootElement.attributeValue("TradeCode");// 取得节点的所有属性Iterator<Attribute> attributeIterator = rootElement.attributeIterator();// 增加属性rootElement.addAttribute("id","222");// 删除属性rootElement.remove(attribute);// 修改属性List<Node> aNodeList = rootElement.selectNodes("CallNo/@id");for (Iterator<Node> it = aNodeList.iterator();((Iterator) it).hasNext();){Node node = it.next();node.setText("se");}}

节点操作

  @Test@SneakyThrowsvoid test1(){SAXReader saxReader = new SAXReader();Document document = saxReader.read("e:/test/test.xml");// 获得xml字符串String asXML = document.asXML();System.out.println(asXML);// 获得根节点Element rootElement = document.getRootElement();// 新增节点及其数据Element menuElement = rootElement.addElement("menu");Element endNameElement = menuElement.addElement("endName");endNameElement.setText("make");// 迭代遍历所有节点Iterator<Element> elementIterator = rootElement.elementIterator();while (elementIterator.hasNext()){Element element = elementIterator.next();System.out.println(element.asXML());}// 修改节点内容List<Node> nodeList = rootElement.selectNodes("menu/book");Iterator<Node> iterator = nodeList.iterator();while (iterator.hasNext()) {Node node = iterator.next();node.setText("三国");}// 删除节点List<Node> nodes = rootElement.selectNodes("menu");Iterator<Node> iterator1 = nodes.iterator();while (iterator1.hasNext()) {Element element = (Element) iterator1.next();rootElement.remove(element);}// 取得单个节点Element callNoElement = rootElement.element("CallNo");rootElement.getText(); // 取得该节点下的文字String name = rootElement.elementText("CallNo"); // 取得下级节点CallNo的文字// 在该节点下添加CDATA内容rootElement.addCDATA("dsfnmfsdgfvosijfas");}

3 xpath

XPath 使用路径表达式在 XML 文档中选取节点,节点是沿着路径或者 step 来选取的。

基本

路径表达式结果
bookstore选取 bookstore 元素的所有子节点
/bookstore选取根元素 bookstore
bookstore / book选取bookstore 下名字为 book的所有子元素
//book选取所有 book 子元素,而不管它们在文档中的位置。
bookstore//book选取bookstore 下名字为 book的所有后代元素,而不管它们位于 bookstore 之下的什么位置。
//**@**lang选取所有名为 lang 的属性。

未知节点

路径表达式结果
/bookstore/*选取 bookstore 元素的所有子节点
//*选取文档中的所有元素
//title[@*]选取所有带有属性的 title 元素。

谓语表达式

路径表达式结果
/bookstore/book[1]选取属于 bookstore 子元素的第一个 book 元素。
/bookstore/book[last()]选取属于 bookstore 子元素的最后一个 book 元素。
/bookstore/book[last()-1]选取属于 bookstore 子元素的倒数第二个 book 元素。
/bookstore/ book [position() < 3]选取最前面的两个属于 bookstore 元素的子元素的 book 元素。
//title[@lang]选取所有拥有名为 lang 的属性的 title 元素。
//title[@lang=‘eng’]选取所有 title 元素,要求这些元素拥有值为 eng 的 lang 属性。
/bookstore/book[price>35.00]选取所有 bookstore 元素的 book 元素,要求book元素的子元素 price 元素的值须大于 35.00。
/bookstore/book[price>35.00]/title选取所有 bookstore 元素中的 book 元素的 title 元素,要求book元素的子元素 price 元素的值须大于 35.00

若干路径

路径表达式结果
//book/title | //book/price选取所有 book 元素的 title 和 price 元素。
//title | //price选取所有文档中的 title 和 price 元素。
/bookstore/book/title**|**//price选取所有属于 bookstore 元素的 book 元素的title 元素,以及文档中所有的 price 元素。
http://www.dtcms.com/wzjs/824570.html

相关文章:

  • 做简单网站需要学什么软件有哪些内容青岛关键词排名推广
  • 网站建设7个基湖南网站设计
  • 四川建设厅下载专区网站网站建设的主流架构有哪些
  • 网站建设布局企业网站主要有哪四种类型
  • 做球迷网站珠宝首饰网站建设规划书
  • 全国 网站备案 数量广东省网站备案
  • 昆明百度网站建设怎样提高百度推广排名
  • 广西建设厅网站绿色建筑标识网站服务器租用选择
  • 网站开发string文件菏泽住房和城乡建设局网站
  • 免费网站制作下载搭建一个论坛网站
  • 如何网站建设 需要详细的步骤网站微信登录怎么做的
  • 建站wordpress大丰网站设计公司
  • 医院网站信息化有哪些建设规范谷歌官网
  • 张槎网站开发移动端开发工具
  • 做像淘宝这样的购物网站要多少钱重庆是哪个省哪个市
  • 麦客网做网站百度网站制作联系方式
  • 课程网站建设技术北京企业建站
  • 代做企业网站备案比较好的网站建设公司
  • 班级网站模板素材wordpress双导航栏
  • 西宁网站建设模板网站设计制作体会
  • 国际版网站可以在国内做推广吗网站做不做301
  • 私人申请建设网站多少钱合肥做兼职网站设计
  • 电子商务网站系统规划 案例分析装修公司做推广网站怎么弄
  • 去什么网站做推广移动网站建设的前景
  • 响应式个人网站psd小程序游戏搭建
  • 做app的网站有哪些手机网站怎么做的好处
  • 网站安全防护找谁做教育网站模块建设
  • 南宁公司网站建设方案sem分析是什么
  • 高端网站设计简介邢台市建设银行网站
  • 深圳外贸建站广州seo网站推广优化