我需要保存一个XmlDocument
以适当缩进的文件,(Formatting.Indented)
但一些节点及其子节点必须在一行中(Formatting.None)
。
XmlTextWriter
由于接受整个文档的设置,如何实现这一点?
在@Ahmad Mageed 回复后编辑:
我不知道 XmlTextWriter 设置可以在编写过程中修改。那是好消息。
现在我正在以这种方式保存 xmlDocument (它已经充满了节点,具体来说是 .xaml 页面):
XmlTextWriter writer = new XmlTextWriter(filePath, Encoding.UTF8);
writer.Formatting = Formatting.Indented;
xmlDocument.WriteTo(writer);
writer.Flush();
writer.Close();
当然,它可以在所有节点中进行缩进。在处理所有<Run>
节点时,我需要禁用缩进。
在您的示例中,您“手动”写入 XmlTextWriter。有没有一种简单的方法来爬取所有 xmlDocument 节点并将它们写入 XmlTextWriter 以便我可以检测<Run>
节点?还是我必须编写某种递归方法来处理当前节点的每个子节点?