1、有些xml文件头部有DTD,程序解析的时候会报错
如:其他信息: 打开外部 DTD“file:///E:/PM数据/MeContext=CDF2775/MeasDataCollection.dtd”: 未能找到文件“E:\PM数据\MeContext=CDF2775\MeasDataCollection.dtd”。 时发生一处错误。
原因:DTD的全称为Document Type Definition,是一种文件定义格式,xml中有DTD表示需要一个外部的格式文件,若没有就会报上面的错
解决:C#中可用XElement直接读取,无需DTD外部文件
2、XmlReader和XElement读取xml的优缺点
XmlReader按行读取,对内存的消耗小,没有结构,所以操作起来不太方便
XElement 读取整个文件,大文件太耗内存,但有结构,很方便操作(取某个节点等)
XmlReader和XElement组合之读取大型xml文档 - JulyLuo - 博客园 (cnblogs.com)