尝试将 String 转换为 java.sql.Date 时出现异常

Exception when trying to convert a String to a java.sql.Date

我有一个日期写成字符串的 JLabel,我想将它转换成 sql.Date,但是当我尝试转换它时,它 运行 是一个异常。日期值是从带有 RMI 的服务器传递的。

有人知道可能是什么问题吗?

这是 RMI 代码:

PrenotazioniVaccini infoPrenotazione = null;    
    try {
        infoPrenotazione = stub.getPrenotazioneVaccinazione(tf_Cf.getText());
    } catch (RemoteException ex) {
        ex.printStackTrace();
    }
    
    label_DataVaccino.setText(infoPrenotazione.getData());

这是标签代码:

label_DataVaccino = new JLabel("");
label_DataVaccino.setBounds(0, 320, 400, 25);
label_DataVaccino.setHorizontalAlignment(JLabel.CENTER);
label_DataVaccino.setVerticalAlignment(JLabel.CENTER);
panel_AddVaccinatoGUI.add(label_DataVaccino);

这里是异常 运行:

private void registraVaccinato() {
   String data = label_DataVaccino.getText();
   Date dataVaccino = Date.valueOf(data);
   System.out.println(dataVaccino);
}

这是错误:

Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException
    at java.sql/java.sql.Date.valueOf(Date.java:141)
    at centrivaccinali.AddVaccinatoGUI.registraVaccinato(AddVaccinatoGUI.java:294)
    at centrivaccinali.AddVaccinatoGUI.actionPerformed(AddVaccinatoGUI.java:282)
    at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1967)
    ...

我使用本指南将字符串转换为 sql.Date:https://www.javatpoint.com/java-sql-date

IllegalArgumentException 是参数非法或不正确的时候。

数据字符串的语法需要采用以下格式:yyyy-mm-dd。还有更多限制,例如 mm < 1 和 mm > 12。