Как хранить разные части текстового файла в разных переменных?
Я пытаюсь прочитать части текстового файла в формате
John Smith
72
160
Первая строка - это имя (строка), а вторая и третья - рост и вес (оба целых). Однако я не могу найти способ сохранить каждый из них в их собственных переменных, вместо этого я могу только выяснить, как сохранить все это в одну переменную и распечатать его. Это код, который у меня есть на данный момент
try
{
File file = new File("person.txt");
FileReader fileReader = new FileReader(file);
BufferedReader bufferedReader = new BufferedReader(fileReader);
StringBuffer stringBuffer = new StringBuffer();
String line;
while ((line = bufferedReader.readLine()) != null)
{
stringBuffer.append(line);
stringBuffer.append("\n");
}
fileReader.close();
System.out.println(stringBuffer);
}
В этой части
stringBuffer.append(line);
stringBuffer.append("\n");
Я думал о том, чтобы попытаться добавить часть в середине обеих строк, в которых хранится переменная, но это казалось невозможным. Я также подумал о том, чтобы использовать цикл for и как-то использовать это в своих интересах, но также не мог придумать, как это сделать.
Есть ли какой-нибудь возможный способ сделать это, о котором я не знаю? Спасибо
2 ответа
Чтение и анализ текстового файла в Java становилось все проще в каждой новой версии. Вы можете попробовать следующий способ:
List<String> lines = Files.lines(Paths.get("person.txt")).collect(Collectors.toList());
String name = lines.get(0);
Integer height = Integer.parseInt(lines.get(1));
Integer weight = Integer.parseInt(lines.get(2));
File file = new File("person.txt");
FileReader fileReader = new FileReader(file);
BufferedReader bufferedReader = new BufferedReader(fileReader);
String firstline = bufferedReader.readLine();
String secondline = bufferedReader.readLine();
String thirdline = bufferedReader.readLine();
fileReader.close();