最近学校有个比赛,需要使用大量的随机数据,我虽然没参加,不过尝试编写了一个批量的成绩生成器
//因为时间(懒)的原因,没写异常处理模块,喵~
//随机中文姓名可用int到char的强制转换,或另写个函数,
//将姓和名保存在两个数组中随机配对
import java.io.*;
import java.util.Scanner;
public class Test {
public static void main(String[] args) throws IOException {
Scanner sc = new Scanner(System.in);
double dataNumber, fileNumber;
String disk = null, frontNumber, item1, item2, item3;
System.out.println("===JAVA成绩生成器===");
System.out.println("===请勿输入过大的数===");
TestBufferedWriter tbw = new TestBufferedWriter();
boolean check = false;
while (!check) {
System.out.println("请输入保存的盘符(单字母):");
disk = sc.next();
check = tbw.listSysRoot(disk);
}
System.out.println("请输入文件个数:");
fileNumber = sc.nextDouble();
System.out.println("请输入每个文件数据个数:");
dataNumber = sc.nextDouble();
System.out.println("请输入学号前缀:");
frontNumber = sc.next();
System.out.println("请输入科目1:");
item1 = sc.next() + ":";
System.out.println("请输入科目2:");
item2 = sc.next() + ":";
System.out.println("请输入科目3:");
item3 = sc.next() + ":";
for (int j = 1; j <= fileNumber; j++) {
String content = "";
String temp[] = new String[(int) dataNumber];
for (int i = 1; i <= (int) dataNumber - 1; i++) {
System.out.println("正在创建第[" + j + "]"
+ "个文件的第[" + i + "]个数据!");
temp[i] = temp[i - 1] + "学号: " + frontNumber +
j + i + (int) (Math.random() * 10000) + item1
+ (int) (Math.random() * 100) + item2 +
(int) (Math.random() * 100) + item3
+ (int) (Math.random() * 100) + "# \n";
}
content = temp[(int) dataNumber - 2];
String Filename = disk + "://" + "test" + j + ".txt";
FileOutputStream out = new FileOutputStream(Filename);
out.write(content.getBytes());
out.close();
}
}
public boolean listSysRoot(String disk) {
File[] roots = File.listRoots();
int i;
for (i = 0; i < roots.length; i++) {
if ((disk.toUpperCase() + ":\\").
equals(roots[i].toString()))
return true;
}
System.out.print("您输入有误,可用的盘符有:");
for (i = 0; i < roots.length; i++) {
System.out.print(roots[i] + " ");
}
return false;
}
}
Comments NOTHING