我是Java新手。我有一个学校项目。我应该检测1500个大文本文件的随机行?实际上,文本文件包含500万行。我想逐行读取.txt文件,然后随机检测1500行,并将随机行写入新的.txt文件 你能不能帮我解决这个问题。
提前致谢。
答案 0 :(得分:0)
只需在0到5 000 000之间选择1500个随机数,然后从文件中获取这些数字。
答案 1 :(得分:0)
首先,创建一个扫描程序对象来解析文件:
File file = new File("filename.txt");
Scanner scanner = new Scanner(file);
然后,使用.nextLine()
方法读取每一行,使用新的随机int来更改正在读取的行:
Random rand = new Random();
int randomInt;
String line;
for (int j = 0; j < 1500; j++){
randomInt = = rand.nextInt(numberOfLinesInFile + 1);
for (int i = 0; i < randomInt + 1; i++) {
line = scanner.readLine();
}
newString += line;
}
然后 newString
将包含1500行的新列表
您还可以生成1500个随机数,创建要读取的行数组,然后仅在计数器等于这些行数时添加正在读取的行。这将减少循环次数以实现相同的结果。以上应该足以让你去...