加密中丢失特殊的unicode字符(C#)

时间:2017-10-20 14:34:37

标签: c# unicode gzipstream

我在加密/解密期间遇到丢失μ字符的问题。我将字符串转换为带有Encoding.UTF8.GetBytes的字节,并将其写入带GZipStream.Write()的流,并从那里写入Blob。我注意到μ被转换为2个字节,而普通字符只是一个字节(我知道μ是一个2字节的字符)。

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

1 个答案:

答案 0 :(得分:1)

看起来Matthew Watson是正确的,因为rtf不支持UTF-8。但是,我发现这个潜在的解决方案我认为可以根据我的需要进行修改。

https://spin.atomicobject.com/2010/08/25/rendering-utf8-characters-in-rich-text-format-with-php/

相关问题