package com.xwtech.mallweb.controller.mini;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.text.SimpleDateFormat;
import java.util.Date;
public class Random32Util{
public static void main(String[] args) {
Random32();
}
public static void Random32(){
//定义生成结果输出txt文件路径
File file = new File("E:\\test.txt");
BufferedWriter out = null;
System.out.println("-------------------------开始生成随机数------------------");
try {
for (int i = 0; i < 1000 ; i++) {
Date d = new Date();
SimpleDateFormat sdf=new SimpleDateFormat("yyyyMMddHHmmssSS") ;
//特定字符串+时间戳+13位随机字符串 ,该形式基本能保证数据不会重复
//有需要的可以再加一层校验
String random = "SDK"+sdf.format(d)+generateRandomStr(13) ;
try {
out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file, true)));
out.write(random+"\n");
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
if(out != null){
out.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
} catch(Exception e){
e.printStackTrace();
}
System.out.println("-------------------------生成完毕!!!------------------");
}
//生成随机字符串
public static String generateRandomStr(int len) {
//字符源,可以根据需要删减
String generateSource = "0123456789abcdefghigklmnopqrstuvwxyz";
String rtnStr = "";
for (int i = 0; i < len; i++) {
//循环随机获得当次字符,并移走选出的字符
String nowStr = String.valueOf(generateSource.charAt((int) Math.floor(Math.random() * generateSource.length())));
rtnStr += nowStr;
generateSource = generateSource.replaceAll(nowStr, "");
}
return rtnStr;
}
}
Java 生成32位随机数
最新推荐文章于 2024-05-10 16:01:41 发布