如何将YYYYMMDDHHMMSS格式的日期转换为纪元或unix时间?

Cor*_*c Q -1 java date

编辑:我已经编辑了我的问题以包含更多信息,我已经尝试了很多方法来做到这一点,在StackOverflow上问一个问题通常是我的最后一招.任何帮助是极大的赞赏.

我有一个YYYYMMDDHHMMSS格式的日期(它是一个Timestamp对象)(例如20140430193247).这是从我的服务发送到前端,使用AngularJS格式显示它:date:'dd/MM/yyyy'.

如何将其转换为Epoch/Unix时间?

我已经尝试了与此相关的重复问题,我得到的是另一个日期.

我也尝试过以下方法:

A:

//_time == 20140430193247
return _time.getTime()/1000; // returns 20140430193 - INCORRECT
Run Code Online (Sandbox Code Playgroud)

B:

return _time.getTime(); // returns 20140430193247 (Frontend: 23/03/2608) - INCORRECT
Run Code Online (Sandbox Code Playgroud)

C:

Date date = new Date();
//_time = 20140501143245 (i.e. 05/01/2014 14:32:45)
String str = _time.toString();
System.out.println("Time string is " + str);
//Prints: Time string is 2608-03-24 15:39:03.245 meaning _time.toString() cannot be used
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
try {
        date = df.parse(str);
} catch (ParseException e) {
}

return date; // returns 20140501143245 - INCORRECT
Run Code Online (Sandbox Code Playgroud)

d:

date = new java.sql.Date(_time.getTime());
return date; // returns 2608-03-24 - INCORRECT
Run Code Online (Sandbox Code Playgroud)

以下显示今天的日期:

Date date = new Date();
return date; // returns 1398939384523 (Frontend: 01/05/2014)
Run Code Online (Sandbox Code Playgroud)

谢谢

Cor*_*c Q 6

经过不少尝试,我得到了答案.解决方案非常简单 - 将时间解析为字符串,因为toString()不起作用.

    Date date;
    SimpleDateFormat df = new SimpleDateFormat("yyyyMMddHHmmss");

    try {
        date = df.parse(String.valueOf(_time.getTime()));
    } catch (ParseException e) {
        throw new RuntimeException("Failed to parse date: ", e);
    }

    return date.getTime();
Run Code Online (Sandbox Code Playgroud)