我在我的项目中使用 XmlTextWriter
类。我不知道,如何在 Xml 中使用 CDATA。谁能帮我?
objX.WriteElementString("category", c.DeepestCategoryName);
最佳答案
正如其他人所指出的,如果您想明确地编写 CDATA 部分,请使用 WriteCData
。这是一种通用扩展方法,如果文本包含某些字符,我会使用它来“自动”编写 CDATA 元素:
public static void WriteElementContent(this XmlWriter writer, string content)
{
if (String.IsNullOrEmpty(content))
{
return;
}
// WriteString will happily escape any XML markup characters. However,
// for legibility we write content that contains certain special
// characters as CDATA
const string SpecialChars = @"<>&";
if (content.IndexOfAny(SpecialChars.ToCharArray()) != -1)
{
writer.WriteCData(content);
}
else
{
writer.WriteString(content);
}
}
关于c# - 如何使用 XmlTextWriter 生成 CDATA?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4546750/