Я пытаюсь прочитать текст ввода, который направлен в программу как таковой.Scanner throws no Линейное исключение после чтения ввода.txt
Java Echo < input.txt
import java.util.Scanner;
public class Echo {
public static void main(String[] args) {
// Reads Text File
Scanner sc = new Scanner(System.in);
while (sc.hasNextLine()){
System.out.println(sc.nextLine());
}
// Reads User's Input
System.out.println("Keyboard Input: ");
if(sc.hasNextLine()){
System.out.println(sc.nextLine());
}
}
}
Хотя вход будет читать, sc.nextLine
вернется null
. Как я могу это сделать sc.nextLine()
читает от пользователя, а не от файла?
Результат
$ java Echo < input.txt
A:Economy:name:W
Keyboard Input:
ввода с клавиатуры не читать, но вместо этого просто пустым. Как я могу сделать так, чтобы пользователь мог вводить ввод в командной строке после?
Вы перенаправляете 'std.in' в файл. Чего вы ожидаете, когда закончите? –
Для чтения с пользовательского ввода вместо файла ** не перенаправлять вход **. Дайте имя файла программе в качестве аргумента, и пусть программа откроет файл. и читать его напрямую. – Andreas
поиск 'java как читать из файла' –