簡體   English   中英

如何在Java中將“ YYYY-MM-DD hh:mm:ss”轉換為UNIX時間戳?

[英]How to convert “YYYY-MM-DD hh:mm:ss” to UNIX timestamp in Java?

或者,也許您知道一種更好的方法來解決此問題。 我以“ YYYY-MM-DD HH:MM:SS”的格式獲取日期,並且需要以近似的增量計算從現在到現在的時間差:1分鍾前,1小時前,等等。

任何指針非常感激:)

看看SimpleDateFormat

您可以定義模式並將其解析為Java Date對象:

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = format.parse("your string goes here");
long timestamp = date.getTime();

第一行定義SimpleDateFormat(如果重復使用很多,也可以是靜態的)。第二行解析您的輸入。第三行將其轉換為毫秒。

首先,您需要將日期字符串解析為Date ,然后從中獲取時間戳:

final SimpleDateFormat dateFormat = new SimpleDateFormat("YYYY-MM-dd HH:mm:ss");

final String myDateString = "someDateString";
final Date date = dateFormat.parse(myDateString);

final long timestamp = date.getTime();

查看SimpleDateFormat javadocs,以獲取有關使用哪種格式字符串的信息。

您需要將字符串轉換成java.util.Date與SimpleDateFormat的協助(例如,參見- https://stackoverflow.com/search?q=simpledateformat+%5Bjava%5D ),然后獲取自一月一日的毫秒數,1970年,00:00:00 GMT。

Date dt = new Date();
long unixTimeStamp = dt.getTime();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM