2

我的加密应用程序(用 C# 和 GTK# 编写并使用 Rijndeal)从 textview 中获取一个字符串进行加密,并以字节数组的形式返回结果。然后我使用 Encoding.Unicode.GetString() 将其转换为字符串,但我的输出看起来不正确,它似乎包含无效字符:`zźr[���ā�֖�Z�_���� 嗯……

我假设 textview 的编码不是 Unicode,但 ASCII 也不起作用。如何确保输出不无效?还是我的方法一开始就错了?

我是 C# 的新手,一般编程方面的经验不是很丰富(我在 PHP 方面有不错的技能,并且知道一点 JavaScript,但仅此而已)所以如果你能简化你的答案,那将不胜感激。

预先感谢您抽出宝贵时间为我提供帮助。

4

1 回答 1

4

虽然每个字符串都可以使用 UTF-16 表示为一个字节序列,但并不是每个字节序列都表示一个 UTF-16 编码的字符串。特别是如果字节序列是加密过程的结果。

您可以使用Convert.ToBase64String 方法将字节序列转换为Base64字符串。

于 2012-06-24T03:56:27.710 回答