XmlAnalyzer 工程目的:将XML的属性和子节点按字母序排列,然后整形输出:

08.

原文=<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">  <modelVersion>4.0.0</modelVersion>  <groupId>com.heyang</groupId>  <artifactId>XmlAnalyzer</artifactId>  <version>1.00</version>    <dependencies>        <dependency>            <groupId>ch.qos.logback</groupId>            <artifactId>logback-classic</artifactId>            <version>1.1.11</version>        </dependency>        <dependency>            <groupId>ch.qos.logback</groupId>            <artifactId>logback-core</artifactId>            <version>1.1.11</version>        </dependency>                <dependency>            <groupId>commons-lang</groupId>            <artifactId>commons-lang</artifactId>            <version>2.6</version>        </dependency>    </dependencies></project>
整形后文本:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<artifactId>XmlAnalyzer</artifactId>
<dependencies>
<dependency>
<artifactId>logback-classic</artifactId>
<groupId>ch.qos.logback</groupId>
<version>1.1.11</version>
</dependency>
<dependency>
<artifactId>logback-core</artifactId>
<groupId>ch.qos.logback</groupId>
<version>1.1.11</version>
</dependency>
<dependency>
<artifactId>commons-lang</artifactId>
<groupId>commons-lang</groupId>
<version>2.6</version>
</dependency>
</dependencies>
<groupId>com.heyang</groupId>
<modelVersion>4.0.0</modelVersion>
<version>1.00</version>
</project>

07.

原文=<产品列表>    <产品 编号="M09123" 名称="保暖大衣" 品牌="A" 价格="1688" 产地="上海" 材质="羊毛">        <颜色>黑色</颜色>    </产品>    <产品 编号="M09124" 名称="女式大衣" 品牌="B" 价格="899" 产地="江苏">        <颜色>黑色</颜色>        <颜色>红色</颜色>        <颜色>蓝色</颜色>    </产品>    <产品 编号="M09126" 名称="男式毛衣" 品牌="C" 价格="838" 产地="浙江">        <颜色>绿色</颜色>        <颜色>黄色</颜色>        <颜色>黑色</颜色>    </产品></产品列表>
整形后文本:
<产品列表>
<产品 产地="上海" 价格="1688" 名称="保暖大衣" 品牌="A" 材质="羊毛" 编号="M09123">
<颜色>黑色</颜色>
</产品>
<产品 产地="江苏" 价格="899" 名称="女式大衣" 品牌="B" 编号="M09124">
<颜色>黑色</颜色>
<颜色>红色</颜色>
<颜色>蓝色</颜色>
</产品>
<产品 产地="浙江" 价格="838" 名称="男式毛衣" 品牌="C" 编号="M09126">
<颜色>绿色</颜色>
<颜色>黄色</颜色>
<颜色>黑色</颜色>
</产品>
</产品列表>

06.

原文=<products count="1">    <product id="001" name="iphone20">cellphone</product>    <product id="002" name="iphone22"/></products>
整形后文本:
<products count="1">
<product id="001" name="iphone20">cellphone</product>
<product id="002" name="iphone22"/>
</products>

05.

原文=<products count="1">    <product id="001" name="iphone20">cellphone</product></products>
整形后文本:
<products count="1">
<product id="001" name="iphone20">cellphone</product>
</products>

04.

原文=<products>    <product>cellphone</product></products>
整形后文本:
<products>
<product>cellphone</product>
</products>

03.

原文=<product  编号="M09123" 名称="保暖大衣" 品牌="A" 价格="1688" 产地="上海" 材质="羊毛">cellphone    <count>0</count>    <total>123</total></product>
整形后文本:
<product 产地="上海" 价格="1688" 名称="保暖大衣" 品牌="A" 材质="羊毛" 编号="M09123">cellphone
<count>0</count>
<total>123</total>
</product>

02.

原文=<product />
整形后文本:
<product/>

01.

原文=<product  编号="M09123" 名称="保暖大衣" 品牌="A" 价格="1688" 产地="上海" 材质="羊毛">cellphone</product>
整形后文本:
<product 产地="上海" 价格="1688" 名称="保暖大衣" 品牌="A" 材质="羊毛" 编号="M09123">cellphone</product>

整体确认无误,学了BNF后解析嵌套文本是越来越轻松了. :)

--2020年5月26日--

用于测试XmlAnalyzer 1.00版的八个测试用例的更多相关文章

  1. 用于测试 JsonAnalyzer2 1.01版的测试用例

    14. 原文={"animal":"ca,t","color":"ora:nge","isMale" ...

  2. 声笔码7.00版现已进入Beta测试阶段

    声笔码7.00版现已进入Beta测试阶段,有兴趣的朋友可以试试,欢迎多提宝贵意见. 由于论坛附件限制了1M的大小所以无法上传,需要的朋友可加入声笔系列码群(QQ群号:445906697),到共享文件夹 ...

  3. VMware配置回环地址用于测试

           我们在开发过程中,很可能需要一台服务器用于测试,在这种环境下,我们很可能需要用到vmware来构建这样的开发环境.但如果当前处在一个离线,或是不在网内的环境下,我们所搭建的环境有可能无法 ...

  4. Fundebug前端JavaScript插件更新至1.6.0,新增test()方法用于测试

    摘要: 1.6.0新增fundebug.test()方法用于测试,请大家及时更新. 默认情况下,Fundebug 插件能够自动捕获未处理的错误(uncaught error).另外,开发者也可以通过使 ...

  5. 【Cocos2d-Js实战教学(1)横版摇杆八方向移动】

    本教程主要通过搭建一个横版摇杆八方向移动的实例,让大家如何用Cocos2dx-Js来做一款游戏,从基础了解Cocos2dx-Js的基本实现原理,从创建工程,到各个知识点的梳理. 教程分为上下两讲: 上 ...

  6. linux 创建虚拟块设备,制作文件系统并挂载,用于测试lustre

    1.制作块文件 3 个 [root@localhost yaoxu]# [root@localhost yaoxu]# [root@localhost yaoxu]# 2.创建回环设备 [root@l ...

  7. 【AMAD】splinter -- 用于测试web app的python框架

    简介 动机 作用 用法 热度分析 个人评分 简介 Splinter1是一个开源工具,使用Python编写,用于测试web apps.它可以用来对浏览器实现自动化操作,比如访问URLs,和按钮等交互. ...

  8. (转)用C#实现实现简单的 Ping 的功能,用于测试网络是否已经连通

    本文转载自:http://blog.csdn.net/xiamin/archive/2009/02/14/3889696.aspx 用C#实现实现简单的 Ping 的功能,用于测试网络是否已经联通 1 ...

  9. 用于测试SqlAnalyzer1.00的十七个测试用例

    SqlAnalyzer功能:解析SQL语句,具体到字段,表和条件,并将其整理后输出格式化文本. 1. 原文=select a from b 整理后文本= select a from b 2. 原文=s ...

随机推荐

  1. JavaScript的continue、break和return的区别

    1. continue.break和return的区别 循环遍历. for(let i = 0; i < 5; i++){ console.log(i); // 0 1 2 3 4 } 使用co ...

  2. 1、迭代器 Iterator模式 一个一个遍历 行为型设计模式

    1.Iterator模式 迭代器(iterator)有时又称游标(cursor)是程序设计的软件设计模式,可在容器(container,例如链表或者阵列)上遍访的接口,设计人员无需关心容器的内容. I ...

  3. C#LeetCode刷题-树状数组

    树状数组篇 # 题名 刷题 通过率 难度 218 天际线问题   32.7% 困难 307 区域和检索 - 数组可修改   42.3% 中等 315 计算右侧小于当前元素的个数   31.9% 困难 ...

  4. C#LeetCode刷题之#263-丑数(Ugly Number)

    问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/3862 访问. 编写一个程序判断给定的数是否为丑数.丑数就是只包含 ...

  5. 年近而立,Java何去何从?

    摘要:各种新需求新应用层出不尽,各路新生代编程语言异军突起等等,Java未来会不会继续受欢迎?曾经备受关注的Java是否能紧跟时代步伐?新基建时代破茧重生引领云端未来潮流? 1995年第一个Java版 ...

  6. java文件的写入和读取(按行)

    https://blog.csdn.net/Alexwym/article/details/81078417 https://blog.csdn.net/nickwong_/article/detai ...

  7. rabbitmq python demo 参考链接地址

    链接地址: https://docs.openstack.org/oslo.messaging/latest/reference/server.html https://www.cnblogs.com ...

  8. 个人项目wc(C语言)

    github地址:https://github.com/nilonger/mycangku 一.项目要求 1.wc.exe 是一个常见的工具,它能统计文本文件的字符数.单词数和行数.这个项目要求写一个 ...

  9. Java多线程_JUC包下的阻塞队列

    在前面我们提到了阻塞队列,也用过了LinkedBolckingQueue队列了,在这里,我们主要对 ArrayBlockingQueue,PriorityBlockingQueue,DelayQueu ...

  10. Mybatis动态语句

    If元素If元素是简单的条件判断逻辑,满足制定条件时追加if元素的SQL,不满足条件时不追加,使用格式如下: <select ….> SQL语句1 <if test=“条件表达式”& ...