java.text.ParseException:无法解析的日期:“Thu Jan 19 2012 08:00 PM&q

时间:2023-04-06
本文介绍了java.text.ParseException:无法解析的日期:“Thu Jan 19 2012 08:00 PM"的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

我想解析一个日期.我的字符串日期是Thu Jan 19 2012 08:00 PM".我要解析的代码是:

I would like to parse a date. My String date is "Thu Jan 19 2012 08:00 PM". And my code to parse is:

format = new SimpleDateFormat("EEE MMM dd yyyy hh:mm aaa");
this.settDate(new Timestamp((format.parse(sDate)).getTime()));

但是,它不起作用.我如何解析这个日期?

However, it does not work. How could I parse this date?

完整的方法是:

public void saveTask(int iDevice, String description, String sDate) throws ParseException {
    format = new SimpleDateFormat("EEE MMM dd yyyy hh:mm aaa");
    this.setiDeviceId(iDevice);
    this.setsDescription(description);
    this.settDate(new Timestamp((format.parse(sDate)).getTime()));
    DatabaseManager.save(this);
}

还有例外:

java.text.ParseException: Unparseable date: "Thu Jan 19 2012 01:00 AM"

调试图片:

谢谢!

推荐答案

试试下面的代码... 测试成功

Try below code... Tested and worked

    String dateStr = "Thu Jan 19 2012 01:00 PM";
    DateFormat readFormat = new SimpleDateFormat( "EEE MMM dd yyyy hh:mm aaa");

    DateFormat writeFormat = new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss");
    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);

输出为 2012-01-19 13:00:00

干杯!!!乐于助人!!!

Cheers!!! Happy to help!!!

这篇关于java.text.ParseException:无法解析的日期:“Thu Jan 19 2012 08:00 PM"的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

上一篇:在Java中将本地时间戳转换为UTC时间戳 下一篇:MySQL - 如何使用正确的时区存储时间?(来自Java)

相关文章