使用StringBuilder与XmlDocument或创建XML文档相关的优点是什么?

rjz*_*zii 1 .net xml stringbuilder xmldocument

这可能有点代码味道,但我看到它是一些生产代码,即在创建XML文档时使用StringBuilder而不是XmlDocument.在某些情况下,这些是一次写入操作(例如,创建文档并将其保存到磁盘),而其他人正在将构建的字符串传递给XmlDocument,以将XslTransform预先形成为返回给客户端的文档.

如此明显的问题:以这种方式做事是否有价值,是否应该根据具体情况进行,或者这是错误的做事方式?

Ada*_*Dev 6

我建议使用XMLTextWriter来构建XML文档(引自MSDN):

表示一个编写器,它提供快速,非缓存,仅向前生成包含XML数据的流或文件的方式,这些数据符合W3C可扩展标记语言(XML)1.0和XML建议中的命名空间.

我已经多次使用它 - 比使用XMLDocument更高效,使用StringBuilder无法获得的XML安全性.