使用C#WriteDocType()生成与Apple属性列表兼容的XML

使用C#WriteDocType()生成与Apple属性列表兼容的XML,c#,.net,xml,doctype,xmlwriter,C#,.net,Xml,Doctype,Xmlwriter,我正在尝试生成一个XmlDocument,它的DocType是苹果的属性列表(p-List)格式中指定的,应该如下所示: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> using

我正在尝试生成一个
XmlDocument
,它的DocType是苹果的属性列表(p-List)格式中指定的,应该如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
using (XmlTextWriter filenameXMLWriter = new XmlTextWriter(ms, null))
{
        filenameXMLWriter.Formatting = Formatting.Indented;
        filenameXMLWriter.WriteStartDocument();
        filenameXMLWriter.WriteDocType("plist", "-//Apple//DTD PLIST 1.0//EN", "http://www.apple.com/DTDs/PropertyList-1.0.dtd", null);

        filenameXMLWriter.WriteStartElement("plist");
        filenameXMLWriter.WriteAttributeString("version", "1.0");
        ..
        ..
}
DocType
从未写入文档(或者至少从未出现在输出中)。我只知道:

<?xml version="1.0" encoding="UTF-8"?>
<plist version="1.0">


如果有任何帮助,我将不胜感激。

我尝试了您的代码,将输出内存流更改为文件路径,并在运行代码后检查了输出文件,并且正确写入了DocType

你能试着在你的代码中输出到一个文件,看看是写类型行还是内存流有问题吗

问候,


Louis R

两者都不是-我将XML保存到一个文件中,发现Internet Explorer正在处理这一行,但没有显示它。奇怪,但是谢谢你的帮助!