У меня есть текстовый файл, который содержит номер студента (9 цифр), булавку (4 цифры), имя, фамилию. Который выглядит следующим образом:Разделив строки и сопоставив их с текстовым файлом в java
456864324,4965, Eves, Далтон
457642455,2164, Джаггер, Майкл
132435465, 3578, McIvar, Алан
543247531,2854, Джонс, Алан
Студент входит в число учеников, а затем выталкивает. Программа соответствует его вводу в текстовый файл и проверяет, соответствует ли оно или нет.
До сих пор я разделил текст по строкам и сохранил его в ArrayList, а затем подумал о разделении его на «,». Я также думал об использовании Maps, но не могу понять, как я буду хранить имена вместе с ним.
String studentdb = sn_field.getText(); //get student number from input
String pindb = pin_field.getText(); //get pin from input
try {
File f = new File("file name");
Scanner sc = new Scanner(f);
ArrayList<String> number= new ArrayList<String>();
ArrayList<String> pswd = new ArrayList<String>();
while(sc.hasNextLine()){
String line = sc.nextLine();
// = line.split("\n");
String sn = line;
people.add(sn);
}
//if(people.contains(studentdb)){
//System.out.println("pass");}
} catch (FileNotFoundException f) {
System.out.print("file not found");
}
В общем, если количество студентов и придавить и не правы, она должна дать ошибку, если оба правильны и матч, она проходит. Любая помощь будет оценена, поскольку я просто начинающий на Java.
спасибо! что помогает! – user3765848
Кстати, а если между ними есть пробел между такими запятыми: 132435465, 3578, McIvar, Alan 543247531,2854, Jones, Alan – user3765848
Да, я видел это в своем оригинальном исполнении, но решил проигнорировать его, который, вероятно, Это полезно для вас. Вы можете решить это, изменив конструктор Person, чтобы использовать метод trim(). Я отредактирую свой ответ, чтобы включить его. – Nate