[英]Convert date to long (manually)
我想將日期轉換為長值(即毫秒)
我有個約會
2/11/2014
我想計算較長的日期(手動)
我嘗試過的
(2014 - 1970 ) * 31449600000 + 11 * 2592000000 + 2 * 604800000
等於1413504000000。
但是http://www.fileformat.info/tip/java/date2millis.htm告訴我1413504000000
是
Date (America/New_York) Thursday, October 16, 2014 8:00:00 PM EDT
Date (GMT) Friday, October 17, 2014 12:00:00 AM GMT
Date (short/short format) 10/16/14 8:00 PM
我哪里錯了?
同樣,我想手動執行此操作,而不使用Java代碼。
不要重新發明輪子。 眾所周知,時間/日期計算非常困難,即使標准的Java庫也無法正確執行。 使用JodaTime :
import org.joda.time.DateTime;
import org.joda.time.format.DateTimeFormat;
import org.joda.time.format.DateTimeFormatter;
public class JodaTimeSample {
public static void main(String[] args) {
DateTimeFormatter formatter = DateTimeFormat.forPattern("dd/MM/yyyy");
DateTime date = DateTime.parse("2/11/2014", formatter);
System.out.println("Date: " + date.toString());
System.out.println("Millis: " + date.getMillis());
}
}
如果您確定可以手動進行操作(嗯,為什么?-看起來像作業),請打開JodaTime源代碼並復制它。 您不會更好地發明它。 甚至最好打開,閱讀,然后嘗試在編輯器中編寫它。
為什么要手動將日期轉換為長日期或長日期,為什么要編寫一個簡單的Java代碼,以便在約定后給您正確的結果,我使用的是簡單程序,並按照我的用戶進行轉換
public class test {
public static void main(String[] args) {
Date dt=new Date(Long.valueOf(1390973400983L));
System.out.println(dt.toString());
Calendar cal=Calendar.getInstance();
cal.set(2014, Calendar.JANUARY, 29, 11, 00, 0);
System.out.println(cal.getTimeInMillis());
System.out.println();
}
}
欲了解更多信息,請點擊這里
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.