2017-10-26 22 views
-1

私はDVDのカタログファイルを読み、データを配列リストにロードする必要があります。私はファイルの入力プロセスを行ったが、私は正しくDVDを入力する方法を把握しているようだ。txtファイルからアレイリストにデータをロード

ArrayList<DVD> arraylist = new ArrayList<>(); 
public void loadData(String fileName){ 
     try{ 
      Scanner input = new Scanner(new FileReader(fileName)); 
      System.out.println("file read"); 
      while (input.hasNext()){    
       arraylist.add(input);  
      input.close(); }  
     } catch(FileNotFoundException E) { 
      System.err.print(fileName + " Not Found"); 
      System.exit(1); 
     } 
    } 

これは、タイトル、カテゴリ、実行時間、年、価格を含むテキストファイルに含まれています。私はあなたがinput.nextLineを(言う必要があると考えてい

Adam 
Documentary 
78 minutes 
2012 
7.99 
Choo Choo 
Documentary 
60 minutes 
2006 
11.99 
Good Morning America 
Documentary 
80 minutes 
2010 
9.99 
Life is Beautiful 
Drama 
125 minutes 
1999 
15.99 
Morning Bird 
Comic 
150 minutes 
2008 
17.99 
Mystic River 
Mystery 
130 minutes 
2002 
24.99 

答えて

-1
while (input.hasNext()){    
      arraylist.add(input);  
     input.close(); } 

)の代わりにArrayListにスキャナ自体を追加しようとしているの。または、input.nextLineをdvdオブジェクトに変換して追加します。

-1

入力はスキャナです。 ArrayListに追加しようとします。最初にDVDオブジェクトを作成し、それをArrayListに追加する必要があります。

あなたが持つ延期それらを読む必要があるので、だから、DVDごとに5行を持っている:これは、新しいDVDのオブジェクトを作成した値に基づいて

String name = input.next() 
String genre = input.next() 
String length = input.next() 
String year = input.next() 
String price = input.next() 

。この値をDVDクラスのコンストラクタに渡します。

関連する問題