在Java中将日期字符串转换为Epoch

Ash*_*ley 5 java epoch apache-commons-dateutils

有没有办法在Java中将给定的DateString转换为Milliseconds(Epoch长格式)?示例:我想转换

public static final String date = "04/28/2016"; 
Run Code Online (Sandbox Code Playgroud)

到毫秒(epoch).

Pau*_*ski 10

Date.getTime()返回自此Date对象表示的1970年1月1日00:00:00 GMT以来的毫秒数.


aic*_*chy 6

您可以使用java.text.SimpleDateFormat简单地将其解析为java.util.Date并调用它的getTime()函数.它将返回自1970年1月1日以来的毫秒数.

public static final String strDate = "04/28/2016";
try {
    Long millis = new SimpleDateFormat("MM/dd/yyyy").parse(strDate).getTime();
} catch (ParseException e) {
    e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)


Alb*_*ert 1

您可以创建一个Calendar对象,然后将其日期设置为您想要的日期,然后调用其getTimeInMillis()方法。

Calendar c = new Calendar.getInstance();
c.set(2016, 3, 28);
c.getTimeInMillis();
Run Code Online (Sandbox Code Playgroud)

如果您想String直接将日期转换为日期,可以尝试以下操作:

String date = "4/28/2016";
String[] dateSplit = date.split("/");
c.set(Integer.valueOf(dateSplit[2]), Integer.valueOf(dateSplit[0]) - 1, Integer.valueOf(dateSplit[1]));
c.getTimeInMillis();
Run Code Online (Sandbox Code Playgroud)