#java
#java
Вопрос:
как и вопрос, как я могу использовать файловый объект, взятый из класса File https://docs.oracle.com/en/java/javase/12/docs/api/java.base/java/io/File.html
и используйте объект scanner, обернутый вокруг этого, для чтения файла, затем скажите, что в файле содержится пример, подобный этому, Student{name = Jill Gall, age = 21, gpa = 2.98} разделите его на поля, пропустите следующий шаг, так как мне просто нужно вызвать установщики здесь, а затемзатем задайте значения I, чтобы сохранить поля как объект Student, а затем сохранить их в массиве, который я могу вернуть?
На самом деле я не ищу решения всей проблемы, мне просто интересно, каков синтаксис для вызова объекта сканера, обернутого вокруг файлового объекта, для его чтения, я могу использовать substring для захвата полей для разделения и сохранения их в новых полях, и я уверен, чтоЯ могу просто использовать цикл for для загрузки их в массив, который я могу вернуть, единственная причина, по которой я перечислил всю проблему для вас, ребята, чтобы я мог дать вам, ребята, максимально подробную информацию о задаче, которую я могу дать здесь
прямо сейчас моя лучшая попытка — это
Scanner n = new Scanner(System.in);
n.commandgoeshere?(filename);
как мне заставить сканер выводить данные, чтобы я мог взять подстроку и выполнить то, что мне нужно сделать выше?
Комментарии:
1. Вы можете просто использовать метод nextLine .
Ответ №1:
Вы должны предоставить входной поток в конструкторе сканера, при этом вы предоставляете системный входной поток (из консоли) сканеру. Я думаю, что что-то вроде этого — это то, что вы ищете:
File file = new File("");
try {
Scanner scanner = new Scanner(file);
while (scanner.hasNext()) {
String nextLine = scanner.nextLine();
// or use regex ?
String extractedPattern = scanner.next("some pattern");
}
} catch (FileNotFoundException e) {
e.printStackTrace();
}