<?xml version="1.0"?>
<mysqldump xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<database name="test">
<table_data name="test">
<row>
<field name="field1">406</field>
<field name="field2">a2</field>
<field name="field3">16</field>
<field name="field4"></field>
<field name="field5" xsi:type="xs:hexBinary">
[get the content from http://122.183.130.242/file/hex.txt path because i cannot give such a large content to stackoverflow]
</field>
<field name="field6">16</field>
</row>
</table_data>
</database>
</mysqldump>
我正在尝试解析并阅读上述xml文件中的内容。
我正在使用DOM解析器,我也尝试使用StAX解析器来解析XML,但我无法解析这么大的文件。
如何解析大型XML文件?
答案 0 :(得分:0)
使用SAX Parser方法.parse(InputStream stream, HandlerBase handler)
对于处理程序,您使用DefaultHandler。
对于'stream'参数,请执行以下操作:
BufferedReader stream=new BufferedReader( new FileReader(String filename));
...其中“filename”是你猜对了的文件名。 现在我希望您知道如何使用DefaultHandler。基本上你会覆盖你感兴趣的方法。 尝试调整BufferedReader的缓冲区大小,我想你会对结果感到满意。