java 高效解析xml_java 如何简单快速处理 xml 中的数据

Java有什么方便解析XML的类库吗?比如处理如下这段XML:

Everyday Italian

Giada De Laurentiis

2005

850

30.00

...

期望XML结构化后的效果:

Java一般用XPath来解析XML,由于不是集合性语言,写起来会比较长,且大量使用了接口,API也较为复杂。代码大概要写成这样:

...

File file=new File("/workspace/bookstore.xml");

Document document=new SAXReader().read(file);

public void test(){

List nodes = document.selectNodes("bookstore/book");

for(Node node:nodes){

System.out.println(node.getText());

}

}

...

XML解析,用集算器SPL会简单很多,它把 XPath 做了封装,且有丰富强大的集合运算能力,所以很容易应对。比如上面问题仅需2行:

XML解析出来一般都是为了计算,所以SPL还能更方便地计算,比如:统计每年的图书销售额;只需在此基础上增加1行:=A2.groups(year;sum(quantity*price):amount)

其实还有很多情况用Java解析XML不太方便,但用集算器SPL却很简单,感兴趣可以参考:XML数据解析与计算。

集算器还很容易嵌入到Java应用程序中,Java如何调用SPL脚本有使用和获得它的方法。

关于集算器安装使用、获得免费授权和相关技术资料,可以参见如何使用集算器。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值