В файле произвольно сгенерированных паролей моя цель - попросить пароль, проверить файл «codes.txt», чтобы узнать, существует ли он, сказать «ВХОД ПОЛНЫЙ» в течение 5 секунд, удалить пароль, затем закройте файлы. Когда я достигаю цикла while, я ничего не работаю так, как мне нужно. В разных ситуациях он имеет разные результаты, ничто из того, что я могу понять. Я даже не понял, как удалить материал на консоли через 5 секунд после печати «LOGIN COMPLETE». Если бы кто-нибудь мог мне помочь сейчас, я был бы очень признателен. Мой код расположен ниже.Ошибка поиска слова в файле
package password;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Random;
import java.util.Scanner;
public class Password {
public void creator() throws IOException {
FileWriter fw = new FileWriter(new File("codes.txt"));
PrintWriter out = new PrintWriter(fw);
char[] chars = "abcdefghijklmnopqrstuvwxyz1234567890".toCharArray();
Random random = new Random();
for (int x = 0; x < 51; x++){
String word = "";
for (int i = 0; i <= 10; i++) {
char c = chars[random.nextInt(chars.length)];
word+=c;
}
out.println(word);
}
fw.close();
}
public void readit() throws FileNotFoundException, InterruptedException {
File file = new File("codes.txt");
Scanner input = new Scanner(file);
//prints each line in the file
while (input.hasNextLine()) {
String line = input.nextLine();
System.out.println(line);
}
Thread.sleep(10000);
input.close();
}
public void checkit() throws FileNotFoundException, IOException, InterruptedException {
File checkFile = new File("codes.txt");
File tempFile = new File("tempFile.txt");
Scanner input = new Scanner(System.in);
Scanner reader = new Scanner(checkFile);
FileWriter fw = new FileWriter(tempFile);
PrintWriter out = new PrintWriter(fw);
System.out.println("What is the password?");
String word = input.nextLine();
while(reader.hasNextLine()) {
String line = input.nextLine();
if(line.equals(word)){
System.out.println("LOGIN COMPLETE");
Thread.sleep(5000);
} else {
out.println(line);
}
}
reader.close();
fw.close();
checkFile.delete();
tempFile.renameTo(checkFile);
}
}
Основной файл приведен ниже.
package password;
import java.io.FileNotFoundException;
import java.io.IOException;
public class Main {
public static void main(String[] args) throws IOException, FileNotFoundException, InterruptedException {
Password pass = new Password();
pass.creator();
pass.readit();
pass.checkit();
}
}
Я новичок в java, поэтому для того, чтобы понять код, используйте простой код для начинающих.
Как удалить то, что на консоли будет зависеть от консоли. – MikeCAT
'Я даже не понял, как удалить материал на консоли через 5 секунд. Это даже не просто тривиально. Вы должны использовать проклятия или что-то еще? Удаление вещи с консоли - это не стандартная вещь. – Falmarri
Мне просто нужно очистить информацию о выходе из System.out.println, если это не ясно –