2011-04-14 188 views
0

我正在用文本方式从Exchange 2010中以编程方式读取已发送的电子邮件。在我的解析测试中,为了确保电子邮件的有效性,我做了一系列的验证,其中一个是检查开始文本(准确地说是StartsWith)。当我手动将Exchange中的电子邮件复制并粘贴到Visual Studio 2008中时,电子邮件的开头看起来像\r\n \x0002\r\n。从我的研究来看,我相信\x0002是一个笑脸(STX)。但是,从Exchange以编程方式检索电子邮件以及在Outlook中查看\x0002字符将显示为。理想情况下,我想解析从Exchange检索到的内容(\r\n ㅁ\r\n)并将其转换为\r\n \x0002\r\n如何将逐字字符串转换为常规Unicode字符

ReSharper是将原始字符串转换为\x0002的人。

这可能吗?

回答

2

这听起来像你想执行下列操作之一:

Encoding.Unicode.GetBytes(myString); 
Encoding.Unicode.GetChars(myString); 

要格式化charbyte作为一个Unicode字符(如“\ uFF66”或“\ x0002”)看到以下问题:

Converting Unicode strings to escaped ascii string

+0

感谢您的回答。我几乎*在我尝试的那一刻。你怎么得到它返回'\ x0002'而不是笑脸? – gcso 2011-04-14 01:43:53

+0

@gcso这实际上比我更复杂 - 虽然它会 - 我已经更新了我的答案。出于您的目的,我认为您比较好的是与字符进行比较,而不是将字符转换为其转义的字符串表示形式。 – Justin 2011-04-14 01:56:52

+0

非常好,谢谢。 – gcso 2011-04-14 01:59:34

相关问题