如何将JTable字符串日期传递给JDateChooser



我试图从所有类型都为StringJTable传递数据,然后当用户选择表中的行时,我想传递给JDateChooser。但我尝试将日期从字符串类型解析为日期类型,但仍然收到一个错误,显示非法值。

这是代码。

private void tableDataMouseClicked(java.awt.event.MouseEvent evt) {
try{
DefaultTableModel model = (DefaultTableModel) tableData.getModel();
int selectedRowIndex = tableData.getSelectedRow(); //get selected row
Fname.setText(model.getValueAt(selectedRowIndex,1).toString());
Lname.setText(model.getValueAt(selectedRowIndex,2).toString());
ageSpin.setValue(model.getValueAt(selectedRowIndex,3).toString());
Date date = new SimpleDateFormat("yyyy-MM-dd").parse((String)model.getValueAt(selectedRowIndex, 4).toString());
dob.setDate(date);
addressField.setText(model.getValueAt(selectedRowIndex,5).toString());
phoneNumField.setText(model.getValueAt(selectedRowIndex,6).toString());
emailField.setText(model.getValueAt(selectedRowIndex,7).toString());
}catch(ParseException e){
e.printStackTrace();
Logger.getLogger(addCitizzen.class.getName()).log(Level.SEVERE, null, e);
}
}

这是我得到的错误:

java.lang.IllegalArgumentException: illegal value

当程序到达Date部分时会出现错误。

错误是由于传递的参数引起的。这是一个有效的:

Date date = new SimpleDateFormat("dd-MM-yyyy").parse((String)model.getValueAt(selectedRowIndex, 4).toString());

相关内容

  • 没有找到相关文章

最新更新