Я пишу программу на Java, которая отображает ряд афтершоульных клубов (E.G. Football, Hockey - введенный пользователем). Клубы добавляются в следующий ArrayList
:
private ArrayList<Club> clubs = new ArrayList<Club>();
По следующему методу:
public void addClub(String clubName) {
Club club = findClub(clubName);
if (club == null)
clubs.add(new Club(clubName));
}
'Club' - это класс с конструктором - name:
public class Club {
private String name;
public Club(String name) {
this.name = name;
}
//There are more methods in my program but don't affect my query..
}
Моя программа работает - она позволяет мне добавить новый клубный объект в мой arraylist, я могу просмотреть arraylist, и я могу удалить все, что хочу, и т.д.
Тем не менее, теперь я хочу сохранить этот массивList (клубы) в файл, а затем я хочу, чтобы иметь возможность загружать файл позже, и тот же arraylist там снова.
У меня есть два метода для этого (см. ниже) и пытались заставить его работать, но havent hashluck, любая помощь или совет будут оценены.
Сохранить метод (имя_файла выбрано пользователем)
public void save(String fileName) throws FileNotFoundException {
String tmp = clubs.toString();
PrintWriter pw = new PrintWriter(new FileOutputStream(fileName));
pw.write(tmp);
pw.close();
}
Метод загрузки (текущий код не запускается - файл является строкой, но должен быть Club?
public void load(String fileName) throws FileNotFoundException {
FileInputStream fileIn = new FileInputStream(fileName);
Scanner scan = new Scanner(fileIn);
String loadedClubs = scan.next();
clubs.add(loadedClubs);
}
Я также использую GUI для запуска приложения, и на данный момент я могу нажать кнопку "Сохранить", чтобы затем ввести имя и местоположение и сохранить его. Файл появляется и может быть открыт в "Блокноте", но отображается как что-то вроде Club @c5d8jdj (для каждого Клуба в моем списке)