我如何创建我的C#代码在XML中使用空间字符

问题描述:

我有以下字符串,从XML属性阅读:我如何创建我的C#代码在XML中使用空间字符

"OnTrak 4-3/4”, 6-3/4”, 8-1/4”/MPR" 

在我的C#应用​​程序它显示了很好的格式化这样

“OnTrak 4-3/4”,6-3/4“,8-1/4”/ MPR“

这是我在调试器,组合框或组合框中看到的形式没有缩进来指定代码)。

我想要做的就是将相同的字符串指定为C#变量,并在应用程序运行时使其显示格式良好。不幸的是,我得到的只是字符串,因为我真的输入了它。

我试图将编码从ASCII转换为UTF8而没有运气。如何获得正确格式的特殊字符,以及我可以在哪里找到这些符号的列表?

这些被称为XML实体。使用HttpUtility.HtmlDecode将它们解码为纯文本,就像你想的那样。请参阅C#, function to replace all html special characters with normal text characters以了解如何将实体转换为C#

请注意,从ASCII转换为UTF8(以及Unicode等)被称为更改字符集,通常在字符串中包含特定字符时完成。例如,如果你字符串包含中文字符,你不能使用ASCII。在这种简单的情况下,你不需要转换字符集,因为C#字符串默认是Unicode字符集,XML实体是基于Unicode的(我相信)。

+0

谢谢,就是这样。我可能浪费了2个小时编码,并在5分钟内得到了答案。 – spainchaud 2012-08-15 15:04:26

+0

我很高兴它的工作!你介意把它作为答案吗? – Samuel 2012-08-15 21:00:33