新手求教:如何使用普通配置的电脑解析大型XML文件,时间要求8mins左右,文件大概为300万行?
请教如何使用普通配置的电脑
解析大型XML文件
,时间要求在8mins
左右,文件大小大概为50MB
,大约300万行
。
大概结构是这样的:
<File>
<header>
......
<header />
<content>
<name>
<1 > ... <1 />
<2 > ... <2 />
……
<185> ... <185 />
<name />
<value>
<1 > ... <1 />
<2 > ... <2 />
……
<185> ... <185 />
<value />
<value>
<1 > ... <1 />
<2 > ... <2 />
……
<185> ... <185 />
<value />
……
value不断重复,文件行数达到300万行
……
<value>
<1 > ... <1 />
<2 > ... <2 />
……
<185> ... <185 />
<value />
<content />
<File />
望赐教!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
取决于你的XML类型了……如果你的XML是一个嵌套着另一个,比如
假如使用DOM的方式解析,那么300万行就是够呛了。这时候就需要使用SAX而不是DOM的方式解析XML。
但如果是:
这种情况(无论使用哪种解析方式)毫无压力,呵呵!
总之,在未知XML形式或XML文件较大的情况下,使用SAX来解析而不是DOM,是一个明智的选择。
没压力,50M全部写到内存处理也无妨,8分钟绝对够了,你先把程序写出来,然后按照瓶颈进行优化。
用XML數據庫 =.=
解决方法:不要用普通电脑来解析。
https://github.com/isaacs/sax-js