2011-09-17 14 views
1

テキストファイルから日付を読み取って文字列を日付に解析しようとしていますので、配列に読み込むことができます。私はDate date = sdf.parse (token.nextToken());を試してもエラーが出る。テキストファイルから読み込んだ文字列を日付に変換するにはどうすればよいですか?テキストファイルから日付に文字列を解析する

日は

void setDate(Date d) 
{ 
date =d; 
} 

ファイルリーダー

void read() 
    { 
     SimpleDateFormat sdf = new SimpleDateFormat ("dd/MM/yyyy"); 
     int cnt = 0; 
     try 
     { 
      FileReader fr = new FileReader ("oefeningtaak.txt"); 
      BufferedReader br = new BufferedReader (fr); 
      boolean canread = true; 
      while (canread == true) 
      { 
       String lyn = br.readLine(); 
       if (lyn == null) 
       { 
        canread = false; 
       } 
       else 
       { 
        array [cnt] = new Mainobject(); 
        StringTokenizer token = new StringTokenizer (lyn, "*"); 
        String students = token.nextToken(); 
        String vak = token.nextToken(); 
        String maxpunt = token.nextToken(); 
        String punt = token.nextToken(); 
        Date date = sdf.parse (token.nextToken()); 
        array [cnt].setStudents (students); 
        array [cnt].setVak (vak); 
        array [cnt].setMaxpunt (Integer.parseInt (maxpunt)); 
        array [cnt].setPunt (Integer.parseInt (punt)); 
        array [cnt].setDate (date); 
        array [cnt].report(); 
        cnt++; 
       } 
      } 
     } 
     catch (IOException err) 
     { 
      System.out.println (err.toString()); 

     } 
    } 

私が手にエラーが

ある方法「java.util.Date解析($ 1 java.lang.Stringで)設定しましたjava.text.ParseExceptionをスローする: "チェックされた例外" java.text.ParseException "をスローすることができます。そう、その呼び出しが例外をキャッチするtry文で囲む必要があり、さもなければ、このメソッドは例外

+1

入力にはどのような誤差がありますか? – DerMike

答えて

4

あなたはIOExceptionがキャッチされていますが、キャッチ、または宣言し、はParseExceptionされていないをスローするように宣言する必要があります。

チェックされた例外であるため、キャッチするか、メソッドがスローする可能性があることを宣言する必要があります。

関連する問題