2010-03-28 167 views
0

我想使用Sax解析器解析xml文件。该文件具有相同元素的可变数字 。我想要统计元素出现的次数。 我想在分析之前计算这个数,以便我可以声明一个适当大小的数组。Sax从Web服务解析

一种方法是用另一个分析器(笨拙)分别计算它们,其他方法是动态数组(List Array)。有没有其他更好的方法来做到这一点?

另外,是否有可能使我的类的ArrayList ..?因为我想要一个myClass类型的数组。

+0

'ArrayList的 myClasses =新的ArrayList ();' – 2010-03-28 09:25:17

+0

啊这个人应该为我工作.. – donald 2010-03-29 02:04:11

回答

2

萨克斯基本上没有任何历史,所以你不能算,然后回去再解析。为什么不在列表中收集并在最后将列表转换为数组?

注意:对于Web服务输出的复杂工作,一个小的XSLT程序可以创造奇迹。

0

在我看来,一个良好的选择是创建一个列表:

List elements = new ArrayList(); 

然后处理该XML文件,在方法的endElement(...)的SAX类中,你只需要处理时,标签结束,然后将该元素添加到先前创建的列表中。那么无需担心长度。

elements.add(...);