gpt4 book ai didi

java - 生成 3000 字节的随机字符串

转载 作者:行者123 更新时间:2023-11-30 06:26:04 25 4
gpt4 key购买 nike

我正在从事一个项目,人们要求我生成 3000 字节的随机字符串

可以吗?我很困惑我们如何生成 3000 字节的随机字符串?

我知道这样的事情-

SecureRandom srandom = new SecureRandom();
String rand = new BigInteger(176, srandom).toString(32);

但不会是3000字节

有什么方法可以得到3000字节的随机字符串

最佳答案

您可以使用 SecureRandom 的 nextBytes() 方法:

final SecureRandom srandom = new SecureRandom();
final byte []data = new byte[3000];
srandom.nextBytes(data);

如果您需要随机字符串包含可打印字符,那么您可以执行以下操作:

public enum StringUtils
{
INSTANCE;

private static final String CANDIDATES = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
private static final int CANDIDATESLEN;

static
{
CANDIDATESLEN = CANDIDATES.length();
}

public static String generateRandomString(int length)
{
final StringBuffer sb = new StringBuffer(length);
for (int i = 0; i < length; i++)
{
sb.append(CANDIDATES.charAt(RANDOMSOURCE.nextInt(CANDIDATESLEN)));
}
return sb.toString();
}
}

您可以将 CANDIDATES 字符串更改为您需要的任何内容。请注意,3000 个字符并不一定意味着 3000 个字节,因为这取决于您的候选选择和字符编码,但如果您坚持使用上述候选和 UTF-8 编码,您应该没问题。

关于java - 生成 3000 字节的随机字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14843704/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com