無線&移動互聯網技術研發
換位思考·····
posts - 19, comments - 53, trackbacks - 0, articles - 283
BlogJava
::
首頁
::
新隨筆
::
聯系
::
聚合
::
管理
時間工具類 DateUtil
Posted on 2009-08-11 21:28
Gavin.lee
閱讀(734)
評論(1)
編輯
收藏
所屬分類:
Date tools
package
com.Gavin.tools;
import
java.text.SimpleDateFormat;
import
java.util.Date;
import
java.util.Calendar;
import
java.util.Locale;
import
java.util.GregorianCalendar;
import
java.text.DateFormat;
public
class
DateUtil
{
/** */
/**
本地化
*/
private
static
Locale locale
=
Locale.SIMPLIFIED_CHINESE;
/** */
/**
缺省的DateFormat對象,可以將一個java.util.Date格式化成 yyyy-mm-dd 輸出
*/
private
static
DateFormat dateDF
=
DateFormat.getDateInstance(DateFormat. MEDIUM, locale);
/** */
/**
缺省的DateFormat對象,可以將一個java.util.Date格式化成 HH:SS:MM 輸出
*/
private
static
DateFormat timeDF
=
DateFormat.getTimeInstance(DateFormat. MEDIUM, locale);
/** */
/**
缺省的DateFormat對象,可以將一個java.util.Date格式化成 yyyy-mm-dd HH:SS:MM 輸出
*/
private
static
DateFormat datetimeDF
=
DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM, locale);
private
DateUtil()
{
}
/** */
/**
* 返回一個當前的時間,并按格式轉換為字符串
* 例:17:27:03
*
@return
String
*/
public
static
String getTime()
{
GregorianCalendar gcNow
=
new
GregorianCalendar();
Date dNow
=
gcNow.getTime();
return
timeDF.format(dNow);
}
/** */
/**
* 返回一個當前日期,并按格式轉換為字符串
* 例:2004-4-30
*
@return
String
*/
public
static
String getDate()
{
GregorianCalendar gcNow
=
new
GregorianCalendar();
Date dNow
=
gcNow.getTime();
return
dateDF.format(dNow);
}
/** */
/**
* 返回一個當前日期和時間,并按格式轉換為字符串
* 例:2004-4-30 17:27:03
*
@return
String
*/
public
static
String getDateTime()
{
GregorianCalendar gcNow
=
new
GregorianCalendar();
Date dNow
=
gcNow.getTime();
return
datetimeDF.format(dNow);
}
/** */
/**
* 返回當前年的年號
*
@return
int
*/
public
static
int
getYear()
{
GregorianCalendar gcNow
=
new
GregorianCalendar();
return
gcNow.get(GregorianCalendar.YEAR);
}
/** */
/**
* 返回本月月號:從 0 開始
*
@return
int
*/
public
static
int
getMonth()
{
GregorianCalendar gcNow
=
new
GregorianCalendar();
return
gcNow.get(GregorianCalendar.MONTH);
}
/** */
/**
* 返回今天是本月的第幾天
*
@return
int 從1開始
*/
public
static
int
getToDayOfMonth()
{
GregorianCalendar gcNow
=
new
GregorianCalendar();
return
gcNow.get(GregorianCalendar.DAY_OF_MONTH);
}
/** */
/**
* 返回一格式化的日期
*
@param
date java.util.Date
*
@return
String yyyy-mm-dd 格式
*/
public
static
String formatDate(java.util.Date date)
{
return
dateDF.format(date);
}
/** */
/**
* 返回一格式化的日期
*
@param
date
*
@return
*/
public
static
String formatDate(
long
date)
{
return
formatDate(
new
java.util.Date(date));
}
/** */
/**
* 返回一格式化的時間
*
@param
date Date
*
@return
String hh:ss:mm 格式
*/
public
static
String formatTime(java.util.Date date)
{
return
timeDF.format(date);
}
/** */
/**
* 返回一格式化的時間
*
@param
date
*
@return
*/
public
static
String formatTime(
long
date)
{
return
formatTime(
new
java.util.Date(date));
}
/** */
/**
* 返回一格式化的日期時間
*
@param
date Date
*
@return
String yyyy-mm-dd hh:ss:mm 格式
*/
public
static
String formatDateTime(java.util.Date date)
{
return
datetimeDF.format(date);
}
/** */
/**
* 返回一格式化的日期時間
*
@param
date
*
@return
*/
public
static
String formatDateTime(
long
date)
{
return
formatDateTime(
new
java.util.Date(date));
}
/** */
/**
* 將字串轉成日期和時間,字串格式: yyyy-MM-dd HH:mm:ss
*
@param
string String
*
@return
Date
*/
public
static
Date toDateTime(String string)
{
try
{
DateFormat formatter
=
new
SimpleDateFormat(
"
yyyy-MM-dd HH:mm:ss
"
);
return
(java.util.Date) formatter.parse(string);
}
catch
(Exception ex)
{
return
null
;
}
}
/** */
/**
* 將字串轉成日期,字串格式: yyyy/MM/dd
*
@param
string String
*
@return
Date
*/
public
static
Date toDate(String string)
{
try
{
DateFormat formatter
=
new
SimpleDateFormat(
"
yyyy-MM-dd
"
);
return
(java.util.Date) formatter.parse(string);
}
catch
(Exception ex)
{
return
null
;
}
}
/** */
/**
* 取值:某日期的年號
*
@param
date 格式: yyyy/MM/dd
*
@return
*/
public
static
int
getYear(String date)
{
java.util.Date d
=
toDate(date);
if
(d
==
null
)
return
0
;
Calendar calendar
=
Calendar.getInstance(locale);
calendar.setTime(d);
return
calendar.get(Calendar.YEAR);
}
/** */
/**
* 取值:某日期的月號
*
@param
date 格式: yyyy/MM/dd
*
@return
*/
public
static
int
getMonth(String date)
{
java.util.Date d
=
toDate(date);
if
(d
==
null
)
return
0
;
Calendar calendar
=
Calendar.getInstance(locale);
calendar.setTime(d);
return
calendar.get(Calendar.MONTH);
}
/** */
/**
* 取值:某日期的日號
*
@param
date 格式: yyyy/MM/dd
*
@return
從1開始
*/
public
static
int
getDayOfMonth(String date)
{
java.util.Date d
=
toDate(date);
if
(d
==
null
)
return
0
;
Calendar calendar
=
Calendar.getInstance(locale);
calendar.setTime(d);
return
calendar.get(Calendar.DAY_OF_MONTH);
}
/** */
/**
* 計算兩個日期的年數差
*
@param
one 格式: yyyy/MM/dd
*
@param
two 格式: yyyy/MM/dd
*
@return
*/
public
static
int
compareYear(String one, String two)
{
return
getYear(one)
-
getYear(two);
}
/** */
/**
* 計算歲數
*
@param
date 格式: yyyy/MM/dd
*
@return
*/
public
static
int
compareYear(String date)
{
return
getYear()
-
getYear(date);
}
}
評論
#
re: 時間工具類 DateUtil
回復
更多評論
2011-04-28 19:05 by
徐揚
1.較早版本的SimpleDateFormat不是線程安全的,作為field使用時要注意
2.joda api很犀利
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
相關文章:
時間工具類 DateUtil
Calendar 工具類 操作
java SimpleDateFormat
求兩個時間差
Powered by:
BlogJava
Copyright © Gavin.lee
日歷
<
2025年5月
>
日
一
二
三
四
五
六
27
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
常用鏈接
我的隨筆
我的文章
我的評論
我的參與
最新評論
留言簿
(13)
給我留言
查看公開留言
查看私人留言
我參與的團隊
深圳Java俱樂部(0/0)
隨筆檔案
(19)
2011年6月 (1)
2011年5月 (1)
2010年12月 (1)
2010年5月 (1)
2010年1月 (1)
2009年8月 (2)
2009年6月 (6)
2009年5月 (6)
文章分類
(277)
Date tools(4)
FreeMarker (7)
java design pattern(3)
java SE & EE(60)
JDBC(14)
jsp 【勿忘】(5)
Linux command(7)
Linux shell 入門(11)
Linux 日常應用(5)
Log && File Operate(8)
MemCache (5)
SiteMesh 頁面裝飾組件(2)
SSH2 --Hibernate(6)
SSH2 --Spring(9)
SSH2 --Struts2(21)
Subversion(Svn)(5)
wap 積累(8)
web 積累(前端 + 后臺)(33)
xml doc 操作(12)
多線程(6)
性能分析(7)
類的設計(4)
經典語錄(3)
經驗&常識(32)
文章檔案
(282)
2011年7月 (1)
2011年6月 (1)
2011年5月 (1)
2011年4月 (1)
2011年3月 (1)
2011年2月 (1)
2010年12月 (6)
2010年11月 (8)
2010年10月 (1)
2010年9月 (6)
2010年6月 (7)
2010年5月 (22)
2010年4月 (1)
2010年3月 (14)
2010年2月 (2)
2010年1月 (10)
2009年12月 (32)
2009年11月 (30)
2009年10月 (2)
2009年9月 (5)
2009年8月 (13)
2009年7月 (41)
2009年6月 (43)
2009年5月 (33)
收藏夾
(7)
java 基礎類(1)
JSP(1)
server(2)
WEB(1)
數據庫
設計模式(2)
友情鏈接
blogjava中的強人
chinaunix 社區
java 世紀網
java 基礎輔導文章
javaeye 藍色的風
SQL語句教程
與java共舞
中國協議分析網
中文java技術網
多線程
待看的文章
感興趣的 csdn
我的漫漫程序之旅
新起點,新開始
夢幻之旅
趙學慶 的博客
超級多文章的牛人
隔葉黃鶯 The Blog of Unmi
高手論壇
最新隨筆
1.?Mysql:1292 truncated incorrect double value -- concat 函數用法
2.?Mysql 插入當前時間【摘】
3.?學計算機的你傷不起啊【雷人】
4.?ucweb和opera工作原理的差別【摘】
5.?清朝皇帝列表
6.?設置IE查看源文件時默認打開的編輯器【轉】
7.?subclipse svn修改用戶名密碼問題【摘】
8.?hibernate.dialect (Hibernate SQL方言)-備用
9.?Tomcat JspFactory的異常的原因及解決辦法
10.?關于MyEclipse中的Tomcat啟動的問題 【Tomcat JDK name error】
11.?win-xp 自動關機腳本 【古老的記憶】
12.?Office 2007 Word 打開故障 - "The setup controller has encountered a problem during instll"
13.?木匠家的門
14.?MyEclipse 后臺進程一直運行"computing additional info"的解決辦法
15.?MyEclipse 一直 initializing java tooling······
16.?MyEclipse 代碼提示(“@”自動提示)
17.?org.hibernate.hql.ast.QuerySyntaxException(我的流水賬)
18.?org.hibernate.hql.antlr.HqlBaseParser.recover(NoSuchMethodError)
19.?SVN:cannot map the project with svn provider解決辦法
20.?WAP1.0 前端開發經驗(原創-JSP)
21.?Notepad++提示"Load langs.xml failed!"的解決方法
22.?讓你的PC也能訪問手機騰訊網
23.?【轉】Proxool 連接池的配置-hibernate篇
24.?Hibernate 主鍵生成策略
25.?Quartz cron 表達式格式的含義
26.?OGNL功用!!!
27.?使用Appfuse快速構建J2EE應用
28.?大型門戶網站的十四大技術!!!
29.?Urlrewrite與Struts2.x結合使用
30.?HttpWatch的檢測指示說明:Blocked、Connect、Send、Wait、Receive
31.?解讀JAR,SIS,SISX格式區別!!!
32.?commons-lang-2.4.jar 包常用方法集錦
33.?Struts2中解決一個表單多種提交
34.?JSTL(Java Standard Tag Library) 標記庫的使用
35.?Struts2驗證錯誤信息的兩個經典方法-addFieldError&addActionError
36.?Hibernate常見異常-無法轉換為內部表示
37.?Spring AOP詳細導讀-用多手段實例對比呈現AOP
38.?Struts2 Result-type(封裝Action層到View層的跳轉邏輯)
39.?在Struts2中以IOC和非IOC方式獲取session&request
40.?采用url鏈接形式提交action(非s:from方式提交)
搜索
積分與排名
積分 - 356196
排名 - 156
最新評論
1.?re: Struts2驗證錯誤信息的兩個經典方法-addFieldError&addActionError
S2C4
--asdad
2.?re: Struts2驗證錯誤信息的兩個經典方法-addFieldError&addActionError[未登錄]
asd
--as
3.?21232.2323
323432432
--馮海波
4.?re: SVN:cannot map the project with svn provider解決辦法[未登錄]
多謝!已經解決。
--will
5.?re: Struts2驗證錯誤信息的兩個經典方法-addFieldError&addActionError
44
--2
閱讀排行榜
1.?學計算機的你傷不起啊【雷人】(1020)
2.?看看這個笑話,你就知道干IT的不容易了!!(623)
3.?清朝皇帝列表(616)
4.? 每天讀一遍,不久你就會變! ---- 很好很強大(469)
5.?木匠家的門(423)
評論排行榜
1.?學計算機的你傷不起啊【雷人】(0)
2.?清朝皇帝列表(0)
3.?木匠家的門(0)
4.? 每天讀一遍,不久你就會變! ---- 很好很強大(0)
5.?我喜歡的語錄(0)
主站蜘蛛池模板:
国产免费午夜a无码v视频
|
国产精品亚洲色图
|
亚洲精品第一国产综合精品99
|
亚洲w码欧洲s码免费
|
久久久久久久久久免免费精品
|
亚洲AV无码国产精品永久一区
|
亚洲18在线天美
|
亚洲最大视频网站
|
亚洲电影一区二区
|
国产成人精品日本亚洲
|
亚洲午夜福利精品无码
|
国产一区二区三区在线免费
|
日本牲交大片免费观看
|
91九色视频无限观看免费
|
久久免费高清视频
|
中文字幕的电影免费网站
|
狠狠热精品免费观看
|
国产精品亚洲精品日韩动图
|
亚洲欧洲精品成人久久曰
|
亚洲私人无码综合久久网
|
亚洲精品123区在线观看
|
亚洲影视自拍揄拍愉拍
|
亚洲免费福利视频
|
亚洲另类精品xxxx人妖
|
亚洲乱码无限2021芒果
|
亚洲一区二区三区在线观看蜜桃
|
亚洲精品国产福利片
|
亚洲春色在线观看
|
亚洲一级在线观看
|
在线观看亚洲AV日韩A∨
|
亚洲无吗在线视频
|
亚洲精品无码少妇30P
|
国产亚洲一卡2卡3卡4卡新区
|
国产亚洲欧美在线观看
|
日本一区二区在线免费观看
|
人妻巨大乳hd免费看
|
精品国产免费人成网站
|
精品免费tv久久久久久久
|
免费无码VA一区二区三区
|
中文字幕免费在线看线人
|
亚洲乱人伦精品图片
|