您的位置:首页 > 编程语言 > Java开发

java杂技一:xml,json,Excel解析

2014-10-26 11:50 253 查看
在公司差不多有半年时间了,现在总结下项目中用到的一些小杂技,资源来源于网络,所以给想学的新人一点启示,老手可以跳过。

首先说下为什么要分享学到的东西,可能有很多人是学到点东西不愿意告诉别人,怕别人超过自己,或者很懒的跟别人说,但我觉得只有不断的分享才会激励你不断学习的动力,井底之蛙才会永远记得它曾经拥有的光荣。

首先说下项目中经常遇到要解析各种本地或者网络中的数据,而xml,json都是常用的一种数据格式,xml是一种标记性样式语言,看起来比较像html,其实它们都是被同一种协议所规范,而json更为常见,在网页脚本语言js用到。

(备注:所有的jar包我都上传到CSDN了,去我的资源里找。)

一、 下面我介绍下xml解析,分两种情况:一个解析本地的xml文件,只要用到File,Document对象,网上到处都有;还有一种就是解析网络上的资源,这个资料比较少,

1.首先你需要从网上找到对应的jar包,

,这是一个http连接的jar包。

2.接着打下这段代码,

都有说明,你应该明白,这时就将数据读到流中了,接下来从流中读取想要的数据就行。

3.下面涉及到解析xml的3种方法,DOM,SAX,PULL,不过常用的是前两个,前两个我都用过,相对比较容易理解。下面介绍sax的

SAX需要用到jdom的jar包,

,然后

即创建了这样的Document对象,因为文档对象里有很多方法取节点,所以解析最后都会转到这个对象里。

4.下面是一些方法:doc.getRootElement() 获取根节点,

List<Element> departmentList = root.getChildren("department") 获取子节点,这里用List对象是为了方便遍历子节点里面的内容

Element element = peopleList.get(j);

p.setPId(element.getAttributeValue("id")); getAttributeValue 是获取节点的属性值 <people id="xxc"> 取得xxc

element.getChildTextTrim("name"); getChildTextTrim 是获取元素的值 <name>cctv</name> 取得cctv

二、 下面简单介绍下解析json:

1.下载jar包,



2.接着代码,我这里是个简单的测试,所以用的是自己写的json 的字符串,

String strResult = "{\"rtPosition\":[{\"userID\":\"xy\",\"userName\":\"ssy\",\"collectionTime\":\"2014-08-21 18:25:56\""

+ ",\"accuracy\":\"62\",\"longitude\":\"118.883937\""

+ ",\"latitude\":\"32.083206\",\"height\":\"0\",\"speed\":\"0\""

+ ",\"gpsType\":\"1\",\"updateTime\":\"2014-08-21 18:26:37\",\"state\":\"1\",\"remark\":\"\"}]}";



JSONObject代表{ }内容的对象,然后JSONArray代表[ ]内容的对象,用参数指定哪个对象对应那个符号里的内容,看下解析的json字符串你就明白了。

三、解析Excel数据

有时候我们的数据会放到Excel表格中,这个是比较常见的,特别是数据库的数据。

1.下载



2.

如注释;

3.现在对sheet操作即可得到数据,使用两个for循环遍历所有的表格单元内容:



然后Sring的方法来得到你想要的数据。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: