我正在寻找一种将字符串转换为唯一 ID 的方法。
邀请对一种算法提出想法,该算法为发送给它的每个字符串提供一个唯一的数字。
我尝试使用哈希码,但后来意识到两个字符串可能具有相同的哈希码。
如何为每个字符串生成唯一代码作为输入,两个相同的字符串应该始终为我生成相同的 ID。
最佳答案
你的“唯一ID”可以有字符吗?如果是这样,这应该有效 ;-)
public string MakeUnique(string s)
{
return s;
}
所有 ID 对于所提供的值都是唯一的。相同的字符串,将产生完全相同的 ID。这就是您想要的,对吗?
如果它是您想要的整数结果,如何将每个字符转换为一个整数...
public int MakeUnique(string s)
{
string result = "";
foreach(var c in s)
{
result += ((int)c).ToString();
}
return Int.Parse(result);
}
警告:如果字符串是 too big,这将中断
关于c# - 字符串到数字生成器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15436935/