ITPUB??ì3
12月微软Hyper-V虚拟化沙龙主题征集
ITPUB论坛 » 开发工具和语言 » .NET软件架构与模式 » [求助]我用JDOM读取一个XML的文件的时候出了一些问题

新一届的微软MVP评选已经开始,欢迎各位推荐!

标题: [求助]我用JDOM读取一个XML的文件的时候出了一些问题
离线 ipingpingpong
初级会员



精华贴数 0
个人空间 0
技术积分 8 (101103)
社区积分 0 (124840)
注册日期 2004-7-12
论坛徽章:0
      
      

发表于 2004-8-20 09:18 
[求助]我用JDOM读取一个XML的文件的时候出了一些问题

我用JDOM的方法读取一个XML文件的时候,出现了JDOM的Exception:Out of memory。这个XML文件很大。难道是因为文件太大造成的吗??

我看过DOM的介绍,它的原理是把整个XML文件全都解析到内存里。我想难道JDOM的这个问题也是这个原因吗??

请高手帮帮忙!


只看该作者    顶部
离线 firefly
初级会员



精华贴数 0
个人空间 0
技术积分 62 (23958)
社区积分 0 (124278)
注册日期 2004-7-9
论坛徽章:0
      
      

发表于 2004-8-20 17:35 
你的猜测是正确的。
一般用DOM(JDOM)对超过几M的XML进行读写的时候,出现你所遇见的问题很大可能就是内存的问题。

如果不涉及写修改的话还是用SAX吧,如果要的话可能就要另想办法了。


只看该作者    顶部
离线 itsuperman
版主



精华贴数 1
个人空间 0
技术积分 992 (1899)
社区积分 12 (9767)
注册日期 2001-11-9
论坛徽章:3
ITPUB元老管理团队2006纪念徽章授权会员   
      

发表于 2004-8-20 20:38 
同意firefly的观点, 处理太大的XML文件用DOM确实不是很适合, 如果只需要处理文件的片断的话, 建议用SAX, 它在性能方面比DOM优胜.


__________________
我喜欢X元素, 因为它代表一种未知.所以我衷情于XML.itsuperman22@hotmail.com
只看该作者    顶部
离线 chooli
一般会员


精华贴数 2
个人空间 0
技术积分 430 (4586)
社区积分 0 (121580)
注册日期 2004-6-28
论坛徽章:1
管理团队2006纪念徽章     
      

发表于 2004-8-21 16:36 
你也可以在运行你的Java程序时使用最大内存属性来调整你的程序占用的最大内存量:

>java -Xmx128m   /*指定使用最大128Mb的java堆栈*/

当然,这也取决于你的系统的虚拟内存量。


__________________
观察世界,创造世界
只看该作者    顶部
 
    

相关内容


CopyRight 1999-2006 itpub.net All Right Reserved.
北京皓辰广域网络信息技术有限公司. 版权所有
E-mail:Webmaster@itpub.net
京ICP证:010037号 联系我们 法律顾问