String 将唯一字符串转换为唯一数字,反之亦然

String 将唯一字符串转换为唯一数字,反之亦然,string,algorithm,casting,unique,String,Algorithm,Casting,Unique,我根据不同的参数生成唯一的字符串作为ID。我需要有这种ID,因为字符串必须是用户可以理解的。不过,我想将这些ID作为数字保存在数据库中 如何将唯一字符串转换为唯一数字,反之亦然?您可以始终使用解析器(从int到char,反之亦然),许多编程语言都包含该功能。这取决于“唯一字符串”的具体情况。一种非常基本的方法是为每个可能的字符分配一个数字(并将这些数字填充到相同的长度。)A=01,B=02,等等—“转换”从和到ABBA的相应字符01020201将是相当琐碎的。当然,更复杂的方法是可能的。(但请注

我根据不同的参数生成唯一的字符串作为ID。我需要有这种ID,因为字符串必须是用户可以理解的。不过,我想将这些ID作为数字保存在数据库中


如何将唯一字符串转换为唯一数字,反之亦然?

您可以始终使用解析器(从int到char,反之亦然),许多编程语言都包含该功能。

这取决于“唯一字符串”的具体情况。一种非常基本的方法是为每个可能的字符分配一个数字(并将这些数字填充到相同的长度。)
A
=
01
B
=
02
,等等—“转换”从和到
ABBA
的相应字符<代码>01020201将是相当琐碎的。当然,更复杂的方法是可能的。(但请注意,您的说明-
01020201
不是实际的数字。这实际上取决于您需要什么,但您的说明非常模糊。)谢谢,如果您有一个包含50个字符的字符串,则数字将为100位,这有点太长。请看,这就是“取决于具体情况”的意思…(此外,如果可以选择的字符范围大于100,则可能会更大,因为这样您就需要两个以上的数字才能唯一标识每个字符。)正如我所说的,这是一种非常基本的方法。但是,除非你首先对需求做出正确的定义,否则很难提供更多的方法。你希望这些唯一字符串的长度是多少?你希望这些字符串包含哪些字符?例如,你希望它们包含大写ASCII字母a到Z,加上数字0到9?您希望生成多少不同的唯一ID?有很多方法可以满足您的要求,但它们取决于您希望生成的字符串类型。所有数字都是唯一的吗?这两个字符串“good”和“doog”呢?