2010-05-14 52 views
1

我有一个XML文档,我将其导入到一个XmlReader中,该XML文档有一些我需要保留的unicode格式。我保留了空格,但它放弃了编码的#x2028,我认为它应该表示为换行符。Unicode转义字符不被XmlReader读取

这里是我的代码:

var settings = new XmlReaderSettings 
        { 
         ProhibitDtd = false, 
         XmlResolver = null, 
         IgnoreWhitespace = false 
        }; 

var reader = XmlReader.Create(new StreamReader(fu.PostedFile.InputStream), settings); 
var document = new XmlDocument {PreserveWhitespace = true}; 
document.Load(reader); 
return document; 

XML例如:

<td valign="top" align="center">Camels and camel &#x2028;resting place</td> 

如何让那些人物,我可以使BR标签?

回答

0

导入代码插入读卡器后,我能够找到并替换字符:

Regex.Replace(s, "\u2028", "<br/>"); 
0

您的问题不清楚:您是否期望XmlReader将&#x2028;转换为HTML <br>标记?这不会发生。

或者您正在检查<td>元素(在代码内,而不是打印/显示)和看到“骆驼休息的地方”的实际字符内容?如果是的话,请显示你用来验证的代码,因为这将是一个非常重要的错误。

还是别的什么?

+0

我想br标签,以取代的Unicode点。我想通了,谢谢。 – craigmoliver 2010-05-14 18:07:54