0

我有一个现有的 XML 文件,它具有以下起始元素:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mynms SYSTEM 'mynms20.dtd'>
<mynms version="2.0" xmlns="mynms20.xsd"> <!-- This is the troublesome line-->
<cmData type="actual">
   <header>
      <log dateTime="2011-10-17T06:07:07" action="created" appInfo="ActualExporter">InternalValues are used</log>
   </header>
 .....
 </cmData>

我正在使用 c# 的XMLReader读取此文件,然后如上所述更改文件的某些元素,并使用 c# 的XMLWriter在另一个文件中输出新的 xml 。

因此,当 XMLReader 读入一个元素时,我有以下内容:

writer.WriteStartElement(xmlReader.Prefix, xmlReader.Name, null);
writer.WriteAttributes(xmlReader, true);   <!-- This causes the assertion. Take this out then everything is OK -->

但我得到一个异常说明前缀''不能在同一个开始元素标记中从''重新定义为'mynms20.xsd'。<--- 这是什么意思,我怎样才能将命名空间和属性复制到另一个文件?

非常感谢。

4

0 回答 0