在做一个程序 说用XmlDocument这玩意太占内存,有没有什么好方法来控制XML文件???????

解决方案 »

  1.   

    如果用IO操作是不是也要把内容都读到内存,在修改,在保存回去啊??????
    这样和XmlDocument等方法是不是道理一样啊!
      

  2.   

    IO操作通过流的方式来访问xml文件,不过进行简单修改没有问题。
    比如
    XmlTextReader
    XmlTextWriter,
    如果要进行复杂操作就免了,比如需要xpath查询。
      

  3.   

    就目前来所,操作XML数据的方法有两种:DOM和SAX方法
    可以这样说,使用XmlDocument来Load Xml文件的做法都是属于DOM的做法,为什么说他占用内存呢?是因为他把整个XML分析成树结构,全部加载到内存后处理;而且DOM是W3C的标准,在.NET下支持的很好,如果你要处理的XML文件不大,就不需要担心内存问题了另外一个SAX方法,SAX方式不是W3C标准,在.NET下支持不够,但可以通过XmlReader和XmlWriter来模拟进行简单的操作的,可以占用很少的内存的方式解决如果性能要求不高,把XML转换成DataSet后处理也不错,不过要注意转换DataSet后输出XML格式问题参考:http://www.365keyi.com/article.asp?id=10