Java. Sequência de teclas de fim de arquivo quando a entrada de dados estiver completa. Windows

Como eu coloco um fim nesse arquivo para parar esse while?

// adiciona registros ao arquivo

public static void addRecords() {     Scanner input = new Scanner(System.in);      System.out.printf("%s%n%s%n? ",             "Enter account number, first name, last name and balance.",             "Enter end-of-file indicator to end input.");      while (input.hasNext()) // faz um loop até o indicador de fim de arquivo     {         try {             // cria novo registro; esse exemplo supõe uma entrada válida             Account record = new Account(input.nextInt(), input.next(), input.next(), input.nextDouble());              // serializa o objeto de registro em um arquivo             output.writeObject(record);          } catch (NoSuchElementException elementException) {             System.err.println("Invalid input. Please try again.");             input.nextLine(); // descarta entrada para o usuário tentar de novo         } catch (IOException ioException) {             System.err.println("Error writing to file. Terminating.");             break;         }          System.out.print("? ");     } }