2011-09-17 92 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解析(java.lang.String中$ 1)拋出java.text.ParseException:「可以拋出檢查異常」java.text.ParseException「。所以它的調用必須包含在捕獲該異常,否則這個方法必須聲明拋出異常

+1

你輸入了什麼錯誤? – DerMike

回答

4

您正在追趕一個IOException try語句,但你不要再追,或聲明的ParseException的。

您需要捕捉它或聲明您的方法可能會拋出它,因爲它是一個檢查的異常。