代码之家  ›  专栏  ›  技术社区  ›  Roee Adler

C#:使用XmlTextWriter清理XML文本值?

  •  2
  • Roee Adler  · 技术社区  · 17 年前

    我正在使用 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 是用户输入,我希望在编写之前对它们进行清理/转义。

    实现这一目标的最佳方式是什么?

    2 回复  |  直到 17 年前
        1
  •  3
  •   Pavel Minaev    17 年前

    你到底需要什么来逃离那里? WriteElementString & -&燃气轮机; &amp; , < -&燃气轮机; &lt; (等)

        2
  •  -2
  •   Kevin Vaughan    17 年前

    CDATA 这将是使用xml所能做到的最安全的。

    在此之前,您应该通过 RegEx

    推荐文章