0

我正在尝试使用 c# 构建一些 xml 文件,以下是我遇到问题的地方:

      StringBuilder tmp = new StringBuilder ();

      tmp.Append ("<link>");
      tmp.Append ("<url>").Append (link).Append ("</url>");
      tmp.Append ("<hash>").Append ((link).Content.StringValue.ToUpper ()).Append ("</hash>");
      tmp.Append ("</link>");

link没有像“é”这样的特殊字符时,它可以正常工作,但是对于像“fr.wikipedia.org/wiki/Été”这样的链接,我会收到此错误:

Exception occured while inserting entry: XML parsing: line 1, character 218, illegal xml character

谢谢

4

1 回答 1

1

重音字符在 URI 中是不合法的:tools.ietf.org/html/rfc3986#section-2

您应该使用System.Uri.EscapeUriString

EscapeUriString((link).Content.StringValue.ToUpper())
于 2013-09-27T00:05:50.520 回答