您好,我可以知道如何编写代码来生成字母数字代码,该代码看起来像HW6KNMQA
,CMKQ83JX
?我不希望使用UUID方法。有没有简单的方法来为此生成?我们将不胜感激。
到目前为止我做了什么;
import org.apache.commons.lang.RandomStringUtils;
public String testing() throws Exception
{
int ID_LENGTH = 10;
String a = RandomStringUtils.randomAlphanumeric(ID_LENGTH);
return a;
}
但我收到了错误
java.lang.NoClassDefFoundError: org/apache/commons/lang/RandomStringUtils
答案 0 :(得分:1)
您可以使用Apache项目中的RandomStringUtils
。话虽这么说,你似乎不需要一个固定的长度值,我认为这可能会给你造成麻烦,因为它可能会让你更难识别你所追求的价值。
如果这不是问题,您可以使用Random
函数随机决定要生成的字符串的长度。
答案 1 :(得分:0)
您可以使用BigInteger.toString(int radix)。
32
请注意,由于这是基于WXYZ
,您不会看到 ---------- Block 12440 at 0x00000000CD235350: 536 bytes ----------
Leak Hash: 0x3AD573C8, Count: 1, Total 536 bytes
Call Stack (TID 13324):
0x00000000F8841E70 (File and line number not available): MSVCR120D.dll!malloc
d:\projects\xy_dev\engine\ext\openssl\openssl-1.0.1j\crypto\mem.c (79): ***.exe!default_malloc_ex + 0x27 bytes
d:\projects\xy_dev\engine\ext\openssl\openssl-1.0.1j\crypto\mem.c (308): ***.exe!CRYPTO_malloc + 0x18 bytes
d:\projects\xy_dev\engine\ext\openssl\openssl-1.0.1j\crypto\err\err.c (1019): ***.exe!ERR_get_state + 0x17 bytes
d:\projects\xy_dev\engine\ext\openssl\openssl-1.0.1j\crypto\err\err.c (730): ***.exe!ERR_put_error + 0x5 bytes
d:\projects\xy_dev\engine\ext\openssl\openssl-1.0.1j\crypto\rsa\rsa_sign.c (312): ***.exe!int_rsa_verify
d:\projects\xy_dev\engine\ext\openssl\openssl-1.0.1j\crypto\rsa\rsa_sign.c (337): ***.exe!RSA_verify
,但您应该看到所有其他字符和数字的概率相等。