我的加密应用程序(用C#编写的& GTK#和使用Rijndeal)从textview中取得一个字符串进行加密,并以Byte数组形式返回结果。然后我使用Encoding.Unicode.GetString()将其转换为字符串,但是我的输出看起来不正确,它似乎包含无效字符:`zźr[ ā ֖ Z _ W h 。Unicode字节数组中的Cryptotext似乎包含无效字符
我假设textview的编码不是Unicode,但ASCII也不起作用。我如何确保输出无效?或者,我的方法在开始时是错误的?我是新来的C#,并没有非常丰富的编程经验(我有很好的PHP技能,并且知道一点JavaScript,但是就是这样),所以如果你可以贬低你的答案,那将是非常值得赞赏的。
非常感谢您花时间帮助我。
顺便说一句,当我将字节数组转换为ASCII时的输出是:?????? 3q ??'????? e1?d ??? G?^ u^BH – Razick
不是真的,那?是由编码方法插入来表示它 - 呃 - 不能用ASCII表示的字符。 ASCII是一个字节中的7位,并且加密的输出通常是一个字节中的所有8位(或者,对于那些理解历史差异,从八位组开始)。 –
我意识到这一点,我只是指出,输出不能用ASCII表示。感谢您的评论。 – Razick