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

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数据解析.解析回调() {
                    //开始解析的时候调用这个方法
		@Override
		public void 开始解析() {
			sc("----------开始解析------------");
		}
                    //这个方法是表示正在解析的标签,解析钱回调标签名称
		@Override
		public void 正在解析的标签(String bq) {
			sc("正在解析的标签:"+bq+"\n");
			
		}
                    //这个方法是表示这个标签已经解析完成了,回调它的名称
		@Override
		public void 解析完当前(String bq) {
			sc("解析完当前:"+bq);
			sc("--------------------");
		}
                    //这个方法可以不用理会它,
		@Override
		public void 解析里面(String s) {
			sc("--------------------");
			sc("解析里面:"+s);
		}

                    //这个方法比较重要,第一个参数是正在解析的标签名称,第二个是标签的属性和属性值,解析完成后我把它放在Map集合中,第3、4、5个参数可以不用管它,具体回调什么东西把它打印出来就明白了
		@Override
		public void 解析属性和属性值(String 标签名称, HashMap<String, String> 属性属性值, String 内容, String 实体内容, Xml xml) {
			sc("标签名称:"+标签名称);
            for(Map.Entry<String,String> entry:属性属性值.entrySet()){
                sc("属性:"+entry.getKey()+"\t属性值:"+entry.getValue());
            }
            sc("内容:"+实体内容);
		}
//解析完成会回调这个方法
		@Override
		public void 解析完毕() {
			sc("解析完毕!");
		}
    	
    }, xmlstring);
    
   static void sc(Object o) {
       System.out.println(o);
   }

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

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

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值