While putting a .txt file into a list I keep running into a InputMismatchException error. That won't read the "MovieType" or "AlbumTitle". Relevant code has been added.
public class MovieManager {
public static void main(String[] args) throws FileNotFoundException {
ArrayList<MediaItem> list = new ArrayList<>();
Scanner inputFile = new Scanner(new File("collection.txt"));
try {
while (inputFile.hasNextLine()){
String mediaType = inputFile.nextLine();
if (mediaType.equals("Movie")){
String movieTitle = inputFile.nextLine();
//System.out.println("String" + movieTitle);
int movieYear = inputFile.nextInt();
//System.out.println("int" + movieYear);
String movieType = inputFile.nextLine();
//System.out.println("String" + movieType);
Movie mov = new Movie(movieTitle, movieYear, movieType);
list.add(mov);
} else if (mediaType.equals("Album")) {
String albumArtist = inputFile.nextLine();
//System.out.println("String" + albumArtist);
int albumYear = inputFile.nextInt();
//System.out.println("int" + albumYear);
String albumTitle = inputFile.nextLine();
//System.out.println("String" + albumTitle);
Album alb = new Album(albumArtist, albumYear, albumTitle);
list.add(alb);
}
}
inputFile.close();
System.out.print(list);
} catch(InputMismatchException e) {
inputFile.next();
}
}
}
Collection.txt
Album
ABBA
1976
Arrival
Album
ABBA
1981
The Visitors
Album
The Beatles
1969
Abbey Road
Album
Nazareth
1975
Hair of the Dog
Movie
Beauty and the Beast
1991
VHS
Movie
It's a Wonderful Life
1946
DVD
Movie
Tron
1983
Laserdisc
Movie
Tron: Legacy
2010
Blu-ray