我已经生成了一个哈希码
string textBoxVal="Naresh";
int code =textBoxVal.GetHashCode();
textBox2.Text=code.ToString();
它生成了一个整数值 -1078339947;
现在我想用这个(-1078339947)哈希码获得原始名称 Naresh。我怎样才能做到这一点。
我已经生成了一个哈希码
string textBoxVal="Naresh";
int code =textBoxVal.GetHashCode();
textBox2.Text=code.ToString();
它生成了一个整数值 -1078339947;
现在我想用这个(-1078339947)哈希码获得原始名称 Naresh。我怎样才能做到这一点。
出于所有实际目的,您不能:哈希码比字符串少得多,因此有多个原始值可以提供相同的哈希码。
实际上,散列是一种单向操作。如果有人提到可逆散列,这不是真正的散列(因为根据定义,散列将输入集减少为较少数量的输出值之一)。与您描述的最接近的操作可能是加密函数 - 这将允许您反转操作 - 但这不太可能生成与您问题中的 10 位输出一样小的数字。
你就是不能那样做!哈希码不包含将其转换回字符串的所有必要信息。
甚至不能保证GetHashCode()
在不同的环境中会返回相同的东西。