Java简单日期格式化程序解析远程机器中的异常

时间:2014-03-10 07:15:00

标签: java parsing date simpledateformat

在语言环境机器中,我有这个代码,它正在执行...

DateFormat stdf = new SimpleDateFormat(
                "EEE MMM dd yyyy HH:mm:ss zZ (zzzz)");

String date = "Sun Mar 16 2014 10:30:00 GMT 0530 (India Standard Time)"
Calendar stcal = Calendar.getInstance();
try {
   stcal.setTime(stdf.parse(date.replace("GMT ", "UTC+")));
} catch (ParseException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}

但我在亚马逊服务器的远程机器上运行相同的代码 这给出了以下解析错误,

java.text.ParseException: unparseable date: "Sat March 15 2014 09:00:00 UTC+1000<E. Australia Standard Time>"

2 个答案:

答案 0 :(得分:0)

更新替换内容,如下所示:

stcal.setTime(stdf.parse(date.replace("GMT ", "UTC +")));

答案 1 :(得分:0)

stackTrace中的日期是: -

星期六 3月 15 2014 09:00:00 UTC + 1000

但是,在当地,您的日期是: -

String date =“Sun Mar 16 2014 10:30:00 GMT 0530(印度标准时间)”

要运行带有远程机器使用日期的代码,您的日期格式应为: -

DateFormat stdf = new SimpleDateFormat(
            "EEE MMMMM dd yyyy HH:mm:ss zZ (zzzz)");

通知5 Ms而不是3M。