易截截图软件、单文件、免安装、纯绿色、仅160KB

SAX解析XML,为什么会报内存溢出?

用下面的SAX方式,解析一个450M的xml文件时,会报内存溢出?
为什么?Java code:

import java.io.File;
import java.io.FileInputStream;
import java.util.*;

import javax.xml.parsers.*;
import org.xml.sax.Attributes;
import org.xml.sax.helpers.DefaultHandler;

public class SaxXml {
public SaxXml() {
}

public void readXML(String FileName) throws Exception{
SAXParserFactory spf = SAXParserFactory.newInstance();
SAXParser sp = spf.newSAXParser();
MySAXHandler handler = new MySAXHandler();
sp.parse(new FileInputStream(new File(FileName)), handler);
}

class MySAXHandler extends DefaultHandler{
java.util.Stack tagStack = new java.util.Stack();

@SuppressWarnings("unchecked")
public void startElement(String namespace,String localName,String qName,Attributes atts){
tagStack.push(qName);
System.out.println("qName:"+qName);
}
public void endElement(String namespace,String localName,String qName){

}
public void characters(char[] chs,int start,int length){

}

}


public static void main(String[] args){
String name = "f:/data/AuditBizDataDataSet2.xml";
SaxXml q = new SaxXml();
try {
q.readXML(name);
} catch (Exception e) {
e.printStackTrace();
}
}
}





那我应该在


相关问答:

C# DataSet导出xml 批处理(循环)得怎么处理

DataSet导出xml 批处理(循环)得怎么处理
XML文件
<A>
      <B>
        <C>
        </C>
  &nb ......

如何对xml内容数据进行比较 - VC/MFC / HTML/XML

如何对xml内容数据进行比较
例如:
<?xml version='1.0' encoding='utf-8'?>
  <TestLIST>
  <PID>40</PID>
  <TestName>深圳市</TestName> ......

java xml文题 - Java / Java SE

<?xml version="1.0" encoding="utf-8" ?> 
- <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical&q ......

一个dtd引用的xml小错误。。。 - Java / Web 开发

引用的文件包含错误(XXXXX.xsd)。有关更多信息,右键单击消息并选择“显示详细信息...”
请问这是哪出错了???我在elipse里没错 拿到myelipse里xml全是这个错误。。。。

是不是少包啊?

包都在呢呀。。。 ......

根据节点名称循环删除xml节点.txt - .NET技术 / C#

内容如题。。在C#里改如何写呢?
本来思路是先比对节点名称,如是的话就保存要删除节点的下标放在数组里。然后循环删除,但发现。。当我删除第一个后,所有节点下标数量都发生改变。。
就不能再按照之前纪录的节点 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号