【发布时间】:2013-11-28 00:57:50
【问题描述】:
我不知道 ruby 语言。我在 Ruby 中有以下代码。我想要它的 c# 等价物。有人可以帮我解决这个问题吗?
def mysql_key(key)
final_key = "\0" * 16
key.length.times do |i|
final_key[i%16] ^= key[i]
end
final_key
end
编辑: 这是我到目前为止所拥有的,但它不起作用
public static int Ord(string str){
byte[] asciiBytes = Encoding.ASCII.GetBytes(str);
return Convert.ToInt32(asciiBytes[0]);
}
public static string final_key(string key)
{
int d = 0;
int[] Final_key ={0x16} ;
foreach (char c in key)
{
Final_key[d % 16] = Convert.ToChar((Ord(Final_key[d % 16].ToString()) ^ Ord(Final_key[d].ToString())));
d++;
}
return Final_key.ToString();
}
附:我也是 C# 的新手。
任何帮助都将不胜感激 谢谢
【问题讨论】:
-
你应该知道我们不做代码请求。到目前为止你做了什么?
-
试着把它看成是英文的……最大的不同是库函数,它们的名字很好