你好,我目前正在将Delphi代码转换为.NET。他们的数据库中有加密功能,我已经解密了,但问题是输出结果是字节数组。
以下是我迄今为止所做的:
Private Function EnDeCrypt(ByVal Value As String) As String
Dim transformed = Encoding.Unicode.GetBytes(Value).Select( _
Function(item) Not item)
Return Encoding.Unicode.GetString(transformed.ToArray())
End Function
结果:º»¯³¶½ = e d p l i b(不可打印字符)
我的问题是如何将输出转换为字符串。
非常感谢您的建议和帮助。
GetString()
之前,transformed.ToArray()
返回的原始字节的十六进制值是多少?通过使用Encoding.Unicode
,你的代码假定这些字节是 UTF-16 编码的,但显然不是这样,所以你需要使用不同的Encoding
,除非你的查询一开始就返回垃圾。我不熟悉 LINQ,你能解释一下这个查询到底是想要实现什么吗? - Remy Lebeau