2017-10-20 157 views
1

我在加密/解密期间遇到了丢失μ字符的问题。我将字符串转换为Encoding.UTF8.GetBytes的字节,然后将其写入到一个包含GZipStream.Write()的流中,然后从那里到Blob。我注意到,μ转换为2个字节,而普通字符只是一个字节(我知道μ是一个2字节字符)。在加密中丢失特殊的Unicode字符(C#)

使用GZipStream解密流,我使用CopyTo(FileStream)将字节获取到新文件。但是,在新的.rtf中,μ显示为½。有任何想法吗?我认为双字节字符存在问题,但我不确定。

+3

那么,μ是一个双字节字符。它看起来像你一路上丢失了你的编码。 – spodger

+3

https://en.wikipedia.org/wiki/Rich_Text_Format#Character_encoding RTF文件不使用UTF8编码 - 我怀疑这不是问题! –

+1

你能发布一个包含你所描述的所有功能的代码片段吗? – spodger

回答