無線&移動(dòng)互聯(lián)網(wǎng)技術(shù)研發(fā)
換位思考·····
posts - 19, comments - 53, trackbacks - 0, articles - 283
BlogJava
::
首頁
::
新隨筆
::
聯(lián)系
::
聚合
::
管理
時(shí)間工具類 DateUtil
Posted on 2009-08-11 21:28
Gavin.lee
閱讀(743)
評(píng)論(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對(duì)象,可以將一個(gè)java.util.Date格式化成 yyyy-mm-dd 輸出
*/
private
static
DateFormat dateDF
=
DateFormat.getDateInstance(DateFormat. MEDIUM, locale);
/** */
/**
缺省的DateFormat對(duì)象,可以將一個(gè)java.util.Date格式化成 HH:SS:MM 輸出
*/
private
static
DateFormat timeDF
=
DateFormat.getTimeInstance(DateFormat. MEDIUM, locale);
/** */
/**
缺省的DateFormat對(duì)象,可以將一個(gè)java.util.Date格式化成 yyyy-mm-dd HH:SS:MM 輸出
*/
private
static
DateFormat datetimeDF
=
DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM, locale);
private
DateUtil()
{
}
/** */
/**
* 返回一個(gè)當(dāng)前的時(shí)間,并按格式轉(zhuǎn)換為字符串
* 例:17:27:03
*
@return
String
*/
public
static
String getTime()
{
GregorianCalendar gcNow
=
new
GregorianCalendar();
Date dNow
=
gcNow.getTime();
return
timeDF.format(dNow);
}
/** */
/**
* 返回一個(gè)當(dāng)前日期,并按格式轉(zhuǎn)換為字符串
* 例:2004-4-30
*
@return
String
*/
public
static
String getDate()
{
GregorianCalendar gcNow
=
new
GregorianCalendar();
Date dNow
=
gcNow.getTime();
return
dateDF.format(dNow);
}
/** */
/**
* 返回一個(gè)當(dāng)前日期和時(shí)間,并按格式轉(zhuǎn)換為字符串
* 例:2004-4-30 17:27:03
*
@return
String
*/
public
static
String getDateTime()
{
GregorianCalendar gcNow
=
new
GregorianCalendar();
Date dNow
=
gcNow.getTime();
return
datetimeDF.format(dNow);
}
/** */
/**
* 返回當(dāng)前年的年號(hào)
*
@return
int
*/
public
static
int
getYear()
{
GregorianCalendar gcNow
=
new
GregorianCalendar();
return
gcNow.get(GregorianCalendar.YEAR);
}
/** */
/**
* 返回本月月號(hào):從 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));
}
/** */
/**
* 返回一格式化的時(shí)間
*
@param
date Date
*
@return
String hh:ss:mm 格式
*/
public
static
String formatTime(java.util.Date date)
{
return
timeDF.format(date);
}
/** */
/**
* 返回一格式化的時(shí)間
*
@param
date
*
@return
*/
public
static
String formatTime(
long
date)
{
return
formatTime(
new
java.util.Date(date));
}
/** */
/**
* 返回一格式化的日期時(shí)間
*
@param
date Date
*
@return
String yyyy-mm-dd hh:ss:mm 格式
*/
public
static
String formatDateTime(java.util.Date date)
{
return
datetimeDF.format(date);
}
/** */
/**
* 返回一格式化的日期時(shí)間
*
@param
date
*
@return
*/
public
static
String formatDateTime(
long
date)
{
return
formatDateTime(
new
java.util.Date(date));
}
/** */
/**
* 將字串轉(zhuǎn)成日期和時(shí)間,字串格式: 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
;
}
}
/** */
/**
* 將字串轉(zhuǎn)成日期,字串格式: 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
;
}
}
/** */
/**
* 取值:某日期的年號(hào)
*
@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);
}
/** */
/**
* 取值:某日期的月號(hào)
*
@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);
}
/** */
/**
* 取值:某日期的日號(hào)
*
@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);
}
/** */
/**
* 計(jì)算兩個(gè)日期的年數(shù)差
*
@param
one 格式: yyyy/MM/dd
*
@param
two 格式: yyyy/MM/dd
*
@return
*/
public
static
int
compareYear(String one, String two)
{
return
getYear(one)
-
getYear(two);
}
/** */
/**
* 計(jì)算歲數(shù)
*
@param
date 格式: yyyy/MM/dd
*
@return
*/
public
static
int
compareYear(String date)
{
return
getYear()
-
getYear(date);
}
}
評(píng)論
#
re: 時(shí)間工具類 DateUtil
回復(fù)
更多評(píng)論
2011-04-28 19:05 by
徐揚(yáng)
1.較早版本的SimpleDateFormat不是線程安全的,作為field使用時(shí)要注意
2.joda api很犀利
新用戶注冊(cè)
刷新評(píng)論列表
只有注冊(cè)用戶
登錄
后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
相關(guān)文章:
時(shí)間工具類 DateUtil
Calendar 工具類 操作
java SimpleDateFormat
求兩個(gè)時(shí)間差
Powered by:
BlogJava
Copyright © Gavin.lee
日歷
<
2025年6月
>
日
一
二
三
四
五
六
25
26
27
28
29
30
31
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
1
2
3
4
5
常用鏈接
我的隨筆
我的文章
我的評(píng)論
我的參與
最新評(píng)論
留言簿
(13)
給我留言
查看公開留言
查看私人留言
我參與的團(tuán)隊(duì)
深圳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 日常應(yīng)用(5)
Log && File Operate(8)
MemCache (5)
SiteMesh 頁面裝飾組件(2)
SSH2 --Hibernate(6)
SSH2 --Spring(9)
SSH2 --Struts2(21)
Subversion(Svn)(5)
wap 積累(8)
web 積累(前端 + 后臺(tái))(33)
xml doc 操作(12)
多線程(6)
性能分析(7)
類的設(shè)計(jì)(4)
經(jīng)典語錄(3)
經(jīng)驗(yàn)&常識(shí)(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 基礎(chǔ)類(1)
JSP(1)
server(2)
WEB(1)
數(shù)據(jù)庫
設(shè)計(jì)模式(2)
友情鏈接
blogjava中的強(qiáng)人
chinaunix 社區(qū)
java 世紀(jì)網(wǎng)
java 基礎(chǔ)輔導(dǎo)文章
javaeye 藍(lán)色的風(fēng)
SQL語句教程
與java共舞
中國協(xié)議分析網(wǎng)
中文java技術(shù)網(wǎng)
多線程
待看的文章
感興趣的 csdn
我的漫漫程序之旅
新起點(diǎn),新開始
夢(mèng)幻之旅
趙學(xué)慶 的博客
超級(jí)多文章的牛人
隔葉黃鶯 The Blog of Unmi
高手論壇
最新隨筆
1.?Mysql:1292 truncated incorrect double value -- concat 函數(shù)用法
2.?Mysql 插入當(dāng)前時(shí)間【摘】
3.?學(xué)計(jì)算機(jī)的你傷不起啊【雷人】
4.?ucweb和opera工作原理的差別【摘】
5.?清朝皇帝列表
6.?設(shè)置IE查看源文件時(shí)默認(rèn)打開的編輯器【轉(zhuǎn)】
7.?subclipse svn修改用戶名密碼問題【摘】
8.?hibernate.dialect (Hibernate SQL方言)-備用
9.?Tomcat JspFactory的異常的原因及解決辦法
10.?關(guān)于MyEclipse中的Tomcat啟動(dòng)的問題 【Tomcat JDK name error】
11.?win-xp 自動(dòng)關(guān)機(jī)腳本 【古老的記憶】
12.?Office 2007 Word 打開故障 - "The setup controller has encountered a problem during instll"
13.?木匠家的門
14.?MyEclipse 后臺(tái)進(jìn)程一直運(yùn)行"computing additional info"的解決辦法
15.?MyEclipse 一直 initializing java tooling······
16.?MyEclipse 代碼提示(“@”自動(dòng)提示)
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 前端開發(fā)經(jīng)驗(yàn)(原創(chuàng)-JSP)
21.?Notepad++提示"Load langs.xml failed!"的解決方法
22.?讓你的PC也能訪問手機(jī)騰訊網(wǎng)
23.?【轉(zhuǎn)】Proxool 連接池的配置-hibernate篇
24.?Hibernate 主鍵生成策略
25.?Quartz cron 表達(dá)式格式的含義
26.?OGNL功用!!!
27.?使用Appfuse快速構(gòu)建J2EE應(yīng)用
28.?大型門戶網(wǎng)站的十四大技術(shù)!!!
29.?Urlrewrite與Struts2.x結(jié)合使用
30.?HttpWatch的檢測(cè)指示說明:Blocked、Connect、Send、Wait、Receive
31.?解讀JAR,SIS,SISX格式區(qū)別!!!
32.?commons-lang-2.4.jar 包常用方法集錦
33.?Struts2中解決一個(gè)表單多種提交
34.?JSTL(Java Standard Tag Library) 標(biāo)記庫的使用
35.?Struts2驗(yàn)證錯(cuò)誤信息的兩個(gè)經(jīng)典方法-addFieldError&addActionError
36.?Hibernate常見異常-無法轉(zhuǎn)換為內(nèi)部表示
37.?Spring AOP詳細(xì)導(dǎo)讀-用多手段實(shí)例對(duì)比呈現(xiàn)AOP
38.?Struts2 Result-type(封裝Action層到View層的跳轉(zhuǎn)邏輯)
39.?在Struts2中以IOC和非IOC方式獲取session&request
40.?采用url鏈接形式提交action(非s:from方式提交)
搜索
積分與排名
積分 - 357611
排名 - 156
最新評(píng)論
1.?re: Struts2驗(yàn)證錯(cuò)誤信息的兩個(gè)經(jīng)典方法-addFieldError&addActionError
S2C4
--asdad
2.?re: Struts2驗(yàn)證錯(cuò)誤信息的兩個(gè)經(jīng)典方法-addFieldError&addActionError[未登錄]
asd
--as
3.?21232.2323
323432432
--馮海波
4.?re: SVN:cannot map the project with svn provider解決辦法[未登錄]
多謝!已經(jīng)解決。
--will
5.?re: Struts2驗(yàn)證錯(cuò)誤信息的兩個(gè)經(jīng)典方法-addFieldError&addActionError
44
--2
閱讀排行榜
1.?學(xué)計(jì)算機(jī)的你傷不起啊【雷人】(1023)
2.?看看這個(gè)笑話,你就知道干IT的不容易了!!(625)
3.?清朝皇帝列表(620)
4.? 每天讀一遍,不久你就會(huì)變! ---- 很好很強(qiáng)大(470)
5.?木匠家的門(426)
評(píng)論排行榜
1.?學(xué)計(jì)算機(jī)的你傷不起啊【雷人】(0)
2.?清朝皇帝列表(0)
3.?木匠家的門(0)
4.? 每天讀一遍,不久你就會(huì)變! ---- 很好很強(qiáng)大(0)
5.?我喜歡的語錄(0)
主站蜘蛛池模板:
卓资县
|
修武县
|
墨玉县
|
化隆
|
龙海市
|
盘山县
|
成武县
|
沂南县
|
德庆县
|
保康县
|
广丰县
|
金山区
|
稷山县
|
东山县
|
抚顺县
|
鸡泽县
|
淮南市
|
西贡区
|
宝兴县
|
霍邱县
|
新乐市
|
巫溪县
|
崇文区
|
河源市
|
黄大仙区
|
郯城县
|
墨竹工卡县
|
丰顺县
|
阿拉善右旗
|
健康
|
平邑县
|
永川市
|
鹿泉市
|
北安市
|
四会市
|
崇左市
|
梓潼县
|
临沧市
|
兴义市
|
江北区
|
建始县
|