无法解析的日期异常从两个对象创建日期

时间:2014-09-17 10:13:37

标签: java date converter milliseconds jspinner

我使用JXDatePicker和JSpinner从用户输入日期和时间。

然后我需要以长毫秒格式将其格式化为一个日期。

在JXDatePicker中输入03/09/2014,JXDatePicker的输出为:

Wed Sep 03 00:00:00 IDT 2014

并且在JSpinner中输入11:00时,JSpinner的输出为:

Thu Jan 01 22:33:00 IST 1970

我需要将这两个输出结合起来以获取完整日期,然后将其转换为以毫秒为单位的长整数。

我使用此代码:

SimpleDateFormat f = new SimpleDateFormat("DDD MMM dd yyyy hh:mm:ss");
String string_date = 
         datePicker.getDate().toString().substring(0, 11) +
         datePicker.getDate).toString().substring(24, 28) +
         hourPicker.getValue().toString().substring(10,19);
Date d;   
    try {
        d = f.parse(string_date);
    } catch (ParseException e3) {
        e3.printStackTrace();
    }

并获得此例外:

java.text.ParseException: Unparseable date: "Wed Sep 17 2014 12:44:22"
    at java.text.DateFormat.parse(Unknown Source)
    at MainFrame.sendButtonActionPerformed(MainFrame.java:598)
    at MainFrame.access$3(MainFrame.java:574)
    at MainFrame$3.actionPerformed(MainFrame.java:434)

请帮忙!

感谢, 戴夫。

1 个答案:

答案 0 :(得分:1)

为了解析Wed使用'EEE',如下所示,有效标志列表为here

class Test
 {

     public static void main(String[] args) throws ParseException {
         SimpleDateFormat f = new SimpleDateFormat("EEE MMM dd yyyy hh:mm:ss");
         String string_date = "Wed Sep 17 2014 12:44:22";
         System.out.println(f.parse(string_date));

     }

  }