【发布时间】:2012-05-09 07:38:40
【问题描述】:
我有这个 Delphi 代码:
function EnDeCrypt(const Value : String) : String;
var
CharIndex : integer;
begin
Result := Value;
for CharIndex := 1 to Length(Value) do
Result[CharIndex] := chr(not(ord(Value[CharIndex])));
end;
如何翻译成.Net?
【问题讨论】:
-
您使用的是什么编码?我假设的 Delphi 代码假定为 ANSI,但 .net 非常面向 Unicode。您接受的答案是基于 Unicode 的。给定某些输入,您接受的答案将导致无效字符串。
-
你使用什么编码?
-
我无法回答您的问题,因为我不了解编码。但答案是一样的。为什么会这样?
-
在我的测试中,您接受的答案不会解码字符串。我怀疑除非您解决了编码问题,否则您很可能会为将来积攒麻烦。一些快速的单向测试可能不够全面。你能告诉我你的代码是用什么版本的 Delphi 编译的吗?
-
其实是我朋友的代码。他正在使用 delphi 6。让我试试你的答案。