Как сохранить выбранные данные текстового файла в связанном списке
Разработайте и расширьте свою предыдущую программу, чтобы сделать следующее:
Создайте новый тип данных с именем навык, который представляет то, что персонаж умеет делать. Ваша программа должна прочитать список возможных навыков из файла (skills.txt). Вам нужно будет создать этот файл и его содержимое. Пользователь сможет выбрать ограниченное количество этих навыков.
Навык должен быть связанным списком, чтобы облегчить чтение в неизвестном количестве навыков. Основывайте свой класс на следующем:
умения класса { название строковый, строковый необязательно, строку протоколу TCP, stat_affinity инт, инт рядах, умение next_Skill};
После прочтения ваша программа должна позволить пользователю выбрать ряд навыков, равных его уровню, как только он примет свою статистику. Как только этот процесс будет завершен, распечатайте выбранные навыки вместе с остальной информацией о персонаже.
Затем ваша программа должна предложить создать другого персонажа или выйти из игры.
Бонус XP (примечание: не отметки): 1) либо добавьте, либо создайте отдельную функцию/программу для создания/редактирования ваших навыков. Если он находится в вашей основной программе, то он также должен быть в состоянии сохранить файл skills.txt. Если это отдельная программа то она должна быть в состоянии загрузить и сохранить файл skills.txt.
TL:DR - навыки чтения из файла skill.txt. Храните их в связанном списке. У пользователя есть навыки выбора уровня. Печать атрибутов и навыков на экране.
Что я уже пробовал:
пакет com.компания;
импорт java.io.*;//программа начинается с java.io.* для импорта всех классов ввода-вывода
импорт java.text.NumberFormat;
импорт java.util.Сканер;
навыки публичного класса {
статический сканер sc=новый сканер(System.in);
публичный статический пустота главный(строка[] аргументы) {
System.out.println("выберите ваши предпочтительные навыки из списка ниже,пожалуйста, введите только номер:\n" +
"1.Сила\п" +
"2.Ловкость\п" +
"3.Конституции\п" +
"4.Интеллект\п" +
"5.Мудрость\п" +
"6.Харизма");
инт chooseskill=СК.nextInt();
Системы.из.код println(chooseskill);
//программа использует метод getReader для создания
// Буферизованный объект чтения, который может считывать файл.
BufferedReader in = getSkill("/Users/natasha/IdeaProjects/Workshop5/Skills.txt");//программа использует метод getReader для создания
// Буферизованный объект чтения, который может считывать файл.
Skill skills= readSkill(in);;//для достижения каждого фильма используется другой метод readMovie
while(chooseskill!=0&&skills != null) {
Строка msg =skills.title;
Системы.из.код println(глутамат натрия);
навыки = readSkill(in);
}
}
private static BufferedReader getSkill(строковое имя) {
BufferedReader in = null;
пробовать {
File file = новый файл(имя);
in = new BufferedReader(new FileReader(file));
} catch (FileNotFoundException e) {
System.out.println("файл не существует");
System.exit(0);
}
возвращение в дом;
}
частный статический навык readSkill(BufferedReader in) {
Заголовок строки;
Строка строка = "";
Строковые данные;
пробовать {
строка = в.с readline();
} catch (IOException e) {
System.out.println("исключение ввода-вывода");//un-inject language
System.exit(0);
}
if (line == null)
возвращать null;
еще {
данные = строка.сплит("\Т");
название = данные[0];
вернуть новый навык(название);
}
}
отдельный статический класс мастерства {
название государственных строку ;
общественные умения(строка заголовка ) {
this.title = название;
}
}
}
Richard MacCutchan
В чем заключается ваш вопрос? И, пожалуйста, не думайте, что кто-то здесь будет делать вашу работу за вас.