我正在尝试生成一个 XmlDocument
,它具有 Apple 的属性列表 (P-List) 格式中指定的 DocType,它应该如下所示:
<?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 已正确写入其中。
您可以尝试输出到代码中的文件,看看是 WriteDocType 行还是内存流有问题?
问候,
路易斯·R
关于c# - 使用 C# WriteDocType() 生成符合 Apple Property List 的 XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2903710/