mirror of
https://github.com/qaiu/netdisk-fast-download.git
synced 2025-12-18 21:33:03 +00:00
35
parser/src/main/java/cn/qaiu/util/UUIDUtil.java
Normal file
35
parser/src/main/java/cn/qaiu/util/UUIDUtil.java
Normal file
@@ -0,0 +1,35 @@
|
||||
package cn.qaiu.util;
|
||||
|
||||
import java.security.SecureRandom;
|
||||
|
||||
/**
|
||||
* @author <a href="https://qaiu.top">QAIU</a>
|
||||
* @date 2024/5/13 4:10
|
||||
*/
|
||||
public class UUIDUtil {
|
||||
|
||||
public static String fjUuid() {
|
||||
return generateRandomString(21);
|
||||
}
|
||||
|
||||
public static String generateRandomString(int length) {
|
||||
SecureRandom random = new SecureRandom();
|
||||
byte[] randomBytes = new byte[length];
|
||||
random.nextBytes(randomBytes);
|
||||
|
||||
StringBuilder sb = new StringBuilder();
|
||||
for (byte b : randomBytes) {
|
||||
int value = b & 0x3F; // 63 in hexadecimal
|
||||
if (value < 36) {
|
||||
sb.append(Integer.toString(value, 36));
|
||||
} else if (value < 62) {
|
||||
sb.append(Character.toUpperCase(Integer.toString(value - 26, 36).charAt(0)));
|
||||
} else if (value > 62) {
|
||||
sb.append("-");
|
||||
} else { // value == 62 or 63
|
||||
sb.append("_");
|
||||
}
|
||||
}
|
||||
return sb.toString();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user