隨筆-9  評論-168  文章-266  trackbacks-0

1、java.util.Date類型轉換成long類型
java.util.Date dt = new Date();
System.out.println(dt.toString());   //java.util.Date的含義
long lSysTime1 = dt.getTime() / 1000;   //得到秒數,Date類型的getTime()返回毫秒數

2、由long類型轉換成Date類型
SimpleDateFormat sdf= new SimpleDateFormat("MM/dd/yyyy HH:mm:ss");
//前面的lSysTime是秒數,先乘1000得到毫秒數,再轉為java.util.Date類型
java.util.Date dt = new Date(lSysTime1 * 1000); 
String sDateTime = sdf.format(dt);  //得到精確到秒的表示:08/31/2006 21:08:00
System.out.println(sDateTime);
 
3、"08/31/2006 21:08:00"格式的String轉換java.util.Date類型
String sDt = "08/31/2006 21:08:00";
SimpleDateFormat sdf= new SimpleDateFormat("MM/dd/yyyy HH:mm:ss");
Date dt2 = sdf.parse(sDt);
//繼續轉換得到秒數的long型
long lTime = dt2.getTime() / 1000;
 
 
//注意HH與hh含認不同,HH表示以24小時制取,hh表示以12小時制取
常用的格式的含義,摘自Jdk,注意大小寫的含義通常是不同的:
字母    含義                            示例
y    Year                             1996;96             哪一年
M   Month in year  J              uly;Jul;07           一年中的哪一月
m   Minute in hour                 30                    一個小時中的第幾分鐘
w   Week in year                   27                   一年中的第幾個星期
W   Week in month                 2                    一個月中的第幾個星期
D    Day in year                     189                 一年中的第幾天
d    Day in month                   10                  一個月中的第幾天
H    Hour in day (0-23)            0                   一天中的第幾個小時(24小時制)
h    Hour in am/pm (1-12)        12                  一天中上午、下午的第幾個小時(12小時制)
S    Millisecond                      978                 毫秒數
s    Second in minute              55                  一分鐘的第幾秒
 
4、系統當前時間
long lSysTime2 = System.currentTimeMillis();   //得到毫秒表示的系統當前時間

posted on 2010-06-29 09:17 紫蝶∏飛揚↗ 閱讀(138005) 評論(11)  編輯  收藏 所屬分類: JAVA

評論:
# re: Java 日期時間 Date類型,long類型,String類型表現形式的轉換 2012-04-20 19:23 | 宏偉
撒大聲地撒旦撒旦撒的撒旦阿斯達啊阿斯達  回復  更多評論
  
# re: Java 日期時間 Date類型,long類型,String類型表現形式的轉換 2012-04-20 19:24 | 宏偉
真的很好 ,幫了我們新手很大一個忙~! 謝謝...~?。?!  回復  更多評論
  
# 謝謝,太好啦! 2012-12-27 16:37 | 謝謝,太好啦!
謝謝,太好啦!  回復  更多評論
  
# 謝謝,太好啦! 2012-12-27 16:37 | 謝謝,太好啦!
中國太腐敗了?。。。。。。。。。?!  回復  更多評論
  
# re: Java 日期時間 Date類型,long類型,String類型表現形式的轉換 2013-02-26 15:55 | 孟胖子
樓主大人:
我想把3661000轉換成1時1分1秒怎么轉  回復  更多評論
  
# re: Java 日期時間 Date類型,long類型,String類型表現形式的轉換 2013-09-25 16:33 | 是的發生
樓主威武  回復  更多評論
  
# re: Java 日期時間 Date類型,long類型,String類型表現形式的轉換 2013-11-05 13:14 | 五斗
贊一個  回復  更多評論
  
# re: Java 日期時間 Date類型,long類型,String類型表現形式的轉換 2015-05-04 15:21 | smileyes
@孟胖子
public static void main(String args[]){

long millSec = 3661000l;

SimpleDateFormat sdf = new SimpleDateFormat("h時m分s秒");

Date date= new Date(millSec);

System.out.println(sdf.format(date));


}
但是結果是:9時1分1秒  回復  更多評論
  
# re: Java 日期時間 Date類型,long類型,String類型表現形式的轉換[未登錄] 2015-05-14 15:20 | 小飛俠
真的太SB了  回復  更多評論
  
# re: Java 日期時間 Date類型,long類型,String類型表現形式的轉換 2015-11-19 16:23 |
@宏偉
額為企鵝群  回復  更多評論
  
# re: Java 日期時間 Date類型,long類型,String類型表現形式的轉換 2016-04-04 11:56 | Fzh
@smileyes

public class Reference{
public static void main(String[] args) {
long time = 0L;
Date date = new Date(time);
System.out.println(date);
System.out.println(new SimpleDateFormat("h時m分s秒").format(date));
}
}


【控制臺輸出結果】
Thu Jan 01 08:00:00 CST 1970
8時0分0秒
;
;
提問者應該明白了吧,系統計時是從1970年1月1日早上8點開始的。所以你的3661000L就是9點1分1秒。  回復  更多評論
  
{ganrao}