xml解析框架,这个框架也可以解析html,是我自己写的xml解析技术,花费我很多的时间,我在工厂做这个工作来维持生计↓↓↓↓↓↓↓↓

哈哈哈,开个玩笑,下面这张图片才是我,这张图片是主管拍的

平均月工资3500。我很少接触人,高中学历,很多时候只能聊聊自己,好吧入正题

源码:https://github.com/Saber6666/xml_html

首先在github下载jar包,导入到工程。 然后那怎么用呢? 简单说一下首先new这个类出来然后只需调用一个方法,就可以了。

第一个参数传递的是接口回调,第二个参数传递的是要解析的xml字符串(文本可以从手机内存、内存卡、硬盘加载进来,这里我直接写在变量里,传html字符串也可以,html也可以解析部分),只需实例化接口回调和传递要解析的字符串就可以了,解析的结果通过接口回调出来,很简单 ,这是完整的代码。

//传xml或html都可以
String xml_or_html="<!DOCTYPE html>" +"<html>" +"" +"<head>" +"    <time>my</time>" +"    <meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\">" +"    <script type=\"text/javascript\">" +"        window.onload = function () {" +"        }" +"    </script>" +"    <script type=\"text/javascript\">" +"    </script>" +"</head>" +"<body>" +"    <p>你喜欢哪个城市?</p>" +"    <ul id=\"city\">" +"        <li id=\"bj\" name=\"BeiJing\">北京</li>" +"        <li>追梦赤子心</li>" +"        <li>のみこ - Bad Apple!!</li>" +"        <li>打上花火</li>" +"        <li>我们不一样</li>" +"        <li id=\"id\">广东雨神-广东爱情故事</li>" +"    </ul>" +"    </br></br>" +"    gender:" +"    <input checked=\"true\" type=\"radio\" name=\"gender\" value=\"male\" />动漫" +"    <input type=\"radio\" name=\"gender\" value=\"female\" />歌曲" +"    名称:<input id=\"name\" value=\"文本框的字符串\" />" +"    <input type=\"submit\" id=\"tj\" value=\"添加\" />" +"</body>" Xml数据解析 xml数据解析 = new Xml数据解析();xml数据解析.Xml解析(new Xml数据解析.解析回调() {//开始解析的时候调用这个方法@Overridepublic void 开始解析() {sc("----------开始解析------------");}//这个方法是表示正在解析的标签,解析钱回调标签名称@Overridepublic void 正在解析的标签(String bq) {sc("正在解析的标签:"+bq+"\n");}//这个方法是表示这个标签已经解析完成了,回调它的名称@Overridepublic void 解析完当前(String bq) {sc("解析完当前:"+bq);sc("--------------------");}//这个方法可以不用理会它,@Overridepublic void 解析里面(String s) {sc("--------------------");sc("解析里面:"+s);}//这个方法比较重要,第一个参数是正在解析的标签名称,第二个是标签的属性和属性值,解析完成后我把它放在Map集合中,第3、4、5个参数可以不用管它,具体回调什么东西把它打印出来就明白了@Overridepublic void 解析属性和属性值(String 标签名称, HashMap<String, String> 属性属性值, String 内容, String 实体内容, Xml xml) {sc("标签名称:"+标签名称);for(Map.Entry<String,String> entry:属性属性值.entrySet()){sc("属性:"+entry.getKey()+"\t属性值:"+entry.getValue());}sc("内容:"+实体内容);}
//解析完成会回调这个方法@Overridepublic void 解析完毕() {sc("解析完毕!");}}, xmlstring);static void sc(Object o) {System.out.println(o);}

这个解析xml框架的优点有:
1.使用起来简单,学习时间比大多数的教程短,易理解。
2.可以解析一些html字符串。
3.解析比较全面,解析完成后可以知道标签的嵌套结构,那个标签被谁嵌套。

缺点:
1.使用的内存大
2.解析速度有点慢,相较于其它成熟的xml解析框架。
可能还有有未知的bug。

制衣厂普工小伙用java代码写的xml解析框架相关推荐

  1. java relativelayout_用java代码写RelativeLayout的layout_below逻辑,你不知道的坑

    今天想用java代码写一个在RelativeLayout里面位置在某个View下面居中的View,平时都是用xml代码实现,非常简单,用layout_below属性就可以轻松实现了.于是想当然的在ja ...

  2. Java中四种XML解析技术之不完全测试

    Java中四种XML解析技术之不完全测试 <script language=javascript src=""></script> 在平时工作中,难免会遇到 ...

  3. 怎么把Java代码写成一道风景?

    一.引言 嘻嘻嘻,有没有被标题吸引进来? 当然这里小编所说的"风景",肯定不是名副其实的风景画,而是所讲在Java中如何更好的去编写代码,从而给代码读者放佛在看一副风景画的感觉. ...

  4. 只用120行Java代码写一个自己的区块链

    区块链是目前最热门的话题,广大读者都听说过比特币,或许还有智能合约,相信大家都非常想了解这一切是如何工作的.这篇文章就是帮助你使用 Java 语言来实现一个简单的区块链,用不到 120 行代码来揭示区 ...

  5. 用java代码写个蛋糕_【技术蛋糕】Java编程中写出好代码的建议

    最近在做应用的性能优化,在review代码的过程中积累了一些规则和经验.做到这些规则的目的很简单,就是写出"优美"的代码来. 1.注释尽可能全面 对于方法的注释应该包含详细的入参和 ...

  6. Java代码写好后怎么运行?

    对于很多Java初学者来说,编写好自己的第一个程序能够运行起来是一件非常自豪的事情,那么你知道应该如何才能运行Java代码吗?今天小千就来给大家介绍一下. Java代码运行方法 1.首先需要确保你的电 ...

  7. 如何把Java代码写的简洁

    文章目录 引言 一.三元运算符 二.forEach 参考 引言   本文介绍一些可以将代码写的简洁的小技巧,但简洁的代码就意味着不易读懂,要在简洁性和可读性之间做好取舍. 一.三元运算符  格式:(关 ...

  8. Spring装配bean的三种方法:自动化装配,java代码装配,XML装配及它们的混合使用

    一.自动化装配 首先,把可能被装配的类声明为组件类,告知spring要为这个类创建bean如: import org.springframework.stereotype.Component;@ Co ...

  9. java自带的xml解析_Java自带的XML解析

    JAXP(Java API for XML Processing,意为处理XML的Java API) 解析XML一般有两种方式: 一种是DOM方式:一次性读取XML内容存入内存 优点:能进行各种增删改 ...

最新文章

  1. Redis的事务:相关命令 watch 与mysql事务的区别
  2. 在Visual Studio中使用任何C++编译器
  3. 《 图解 HTTP 》读书笔记
  4. 大数据之Spark简介及RDD说明
  5. 【Python】学习笔记之列表生成式
  6. 在Linux上使用logwatch分析监控日志文件
  7. 继涉黄被约谈 “比心陪练”App因内容涉宣扬暴力再被处罚
  8. VB模拟指针模块mPoint.bas
  9. 马斯克宣布:半年后发布定制AI芯片,特斯拉车主免费升级Hardware 3
  10. Oracle 自动诊断信息库(Automatic Diagnostic Repository,ADR)
  11. Mac电脑上java如何手动释放内存?
  12. java ssh 项目心得_ssh实训总结(共10篇).docx
  13. java trrows处理_检查表并根据同一表中两个匹配列的值使tr内容加粗
  14. 片假名翻译软件测试,怎么写软件测试用例
  15. matlab教程pdf,Matlab2010经典超强教程(清晰、版).pdf
  16. H3C模拟器安装及解决各种兼容性问题方法
  17. PTA 7-47 打印选课学生名单分数 25 分 (C 邻接表+二叉排序树 )
  18. PyQt之计数器(QSpinBox)控件的常用方法
  19. 计算机图形学实验一 《MFC绘图基础》
  20. MySQL基础(非常全)

热门文章

  1. Arm Cortex-A35 性能对比
  2. Packet Tracer(第四期)---4帧中继点对点子接口(完)
  3. 张小龙谈移动互联网产品,最后一次公开演讲,8小时30分
  4. 怎么通过硬盘装linux系统文件下载,通过硬盘上的镜像文件安装Linux操作系统
  5. 在word中像Latex一样键入公式
  6. 【Kubernetes】k8s的健康性检查详细说明【livenss probe、readiness probe】
  7. ZXing二维码介绍
  8. 「栈」的应用系列之「进制转换」
  9. android 上划删除效果,仿小米任务清除
  10. 网站的域名一般如何选择