我正在使用XmlTextWriter序列化和持久化我的一些数据。我序列化的几个字段是基于用户输入的(例如用户名)。现在我使用XmlTextWriter的WriteElementString方法。
我的问题是:WriteElementString的第二个参数是要写入的文本值。我怎样才能在写之前清理它呢?
示例代码如下:
XmlTextWriter writer = new XmlTextWriter("filename.xml", null);
writer.WriteStartElement("User");
writer.WriteElementString("Username", inputUserName);
writer.WriteElementString("Email", inputEmail);
writer.WriteEndElement();
writer.Close();变量inputUserName和inputEmail是用户输入的,我想在编写之前对它们进行清理/转义。
实现这一目标的最好方法是什么?
发布于 2009-07-24 05:18:17
WriteElementString已经完成了XML所需的所有转义(即& -> &、< -> <等)。
发布于 2009-07-24 05:22:38
您可以将这些值保存为CDATA,这将是使用xml时最安全的做法。
在此之前,您应该通过RegEx或任何其他验证来检查这些值。
https://stackoverflow.com/questions/1175828
复制相似问题