Все, что вам нужно, просто установите правильный разделитель столбцов как regexp в Scanner
. В следующем примере я установил \t
в качестве разделителя столбцов с \n
как новый разделитель строки:
public static List<Animal> readAnimals(InputStream in) {
try (Scanner scan = new Scanner(Foo.class.getResourceAsStream("./animals.txt"))) {
scan.useDelimiter("[\\t|\\n]");
List<Animal> animals = new LinkedList<>();
while (scan.hasNext()) {
animals.add(new Animal(scan.next(), scan.next(), scan.next()));
}
return animals;
}
}