日期格式问题:从字符串转换为日期

时间:2013-08-19 12:59:06

标签: java date format

所有

我需要将以下字符串“Tue Jan 01 08:00:00 CET 2013”转换为格式为“dd/MM/yyyy HH:mm”的日期对象。

到目前为止我做了什么......

    String dateStr = "Tue Jan 01 08:00:00 CET 2013";
    DateFormat readFormat = new SimpleDateFormat("E MMM dd HH:mm:ss Z yyyy");

    DateFormat writeFormat = new SimpleDateFormat("dd/MM/yyyy HH:mm");
    Date date = null;
    try 
    {
       date = readFormat.parse(dateStr);

    } catch ( ParseException e ) 
    {
        e.printStackTrace();
    }

    String formattedDate = "";
    if( date != null ) 
    {
        formattedDate = writeFormat.format(date);
    }

    System.out.println(formattedDate);

但是这给了我一个字符串作为结果而不是日期。如果我使用writeFormat再次解析formattedDate字符串,那么我会再次获得相同的原始日期,即Tue Jan 01 08:00:00 CET 2013

注意:最后,我想通过Java Date对象将日期推送到MySQL DateTime数据类型。即字符串 - > Java日期 - > MySQL日期时间。

我在网上搜索了高/低,但找不到合适的解决方案。请帮忙!!!

谢谢和问候,

SG

1 个答案:

答案 0 :(得分:0)

我找到了答案。

DateFormat readFormat = new SimpleDateFormat("E MMM dd HH:mm:ss Z yyyy");
date = readFormat.parse(string);

然后保存到MYSQL数据库......

pstmt.setDate(5, new java.sql.Date(change.getEndDateTime().getTime()));

感谢您的所有回复和道歉,如果它是...

此致 SG