總結(jié)一些常用到的函數(shù)可以直接在你的應(yīng)用程序中調(diào)用就可以了!方便。我在網(wǎng)上找了些有的用不了。
/**
* 以指定的格式來格式化日期
* @param date Date
* @param format String
* @return String
*/
public String formatDateByFormat(java.util.Date date,String format)
{
String result = "";
if(date != null)
{
try
{
SimpleDateFormat sdf = new SimpleDateFormat(format);
result = sdf.format(date);
}
catch(Exception ex)
{
ex.printStackTrace();
}
}
return result;
}
/**
* 常用的格式化日期
*
* @param date Date
* @return String
*/
public String formatDate(java.util.Date date)
{
return formatDateByFormat(date,"yyyy-MM-dd");
}
直接在主方法中調(diào)用這個方法就可以生成我們所想要的日期格式了哦!方便使用的!
java.util 類 Calendar好像這個類的功能相當?shù)貜姶螅也榱艘幌翵DK參考文檔摘錄如下重要信息:
Calendar 提供了一個類方法 getInstance,以獲得此類型的一個通用的對象。Calendar 的 getInstance 方法返回一個 Calendar 對象,其日歷字段已由當前日期和時間初始化:
Calendar rightNow = Calendar.getInstance();//類方法
可以通過調(diào)用 set 方法來設(shè)置日歷字段值。在需要計算時間值(距歷元所經(jīng)過的毫秒)或日歷字段值之前,不會解釋 Calendar 中的所有字段值設(shè)置。調(diào)用 get、getTimeInMillis、getTime、add 和 roll 涉及此類計算。
會了這個方法之后的方法如下:
/**
* 返回年份
*
* @param date
* 日期
* @return 返回年份
*/
public static int getYear(java.util.Date date) {
java.util.Calendar c = java.util.Calendar.getInstance();
c.setTime(date);
return c.get(java.util.Calendar.YEAR);
}
賦值一個java.util.Date 對象給它當參數(shù)就可以得到當前的年份了。
/**
* 返回月份
*
* @param date
* 日期
* @return 返回月份
*/
public static int getMonth(java.util.Date date) {
java.util.Calendar c = java.util.Calendar.getInstance();
c.setTime(date);
return c.get(java.util.Calendar.MONTH) + 1;
}
得到1月份為1哦。因為我加了1哈哈。
/**
* 返回日份
*
* @param date
* 日期
* @return 返回日份
*/
public static int getDay(java.util.Date date) {
java.util.Calendar c = java.util.Calendar.getInstance();
c.setTime(date);
return c.get(java.util.Calendar.DAY_OF_MONTH);
}
可以返回是幾號出來了哦!
/**
* 返回小時
*
* @param date
* 日期
* @return 返回小時
*/
public static int getHour(java.util.Date date) {
java.util.Calendar c = java.util.Calendar.getInstance();
c.setTime(date);
return c.get(java.util.Calendar.HOUR_OF_DAY);
}
/**
* 返回分鐘
*
* @param date
* 日期
* @return 返回分鐘
*/
public static int getMinute(java.util.Date date) {
java.util.Calendar c = java.util.Calendar.getInstance();
c.setTime(date);
return c.get(java.util.Calendar.MINUTE);
}
/**
* 返回秒鐘
*
* @param date
* 日期
* @return 返回秒鐘
*/
public static int getSecond(java.util.Date date) {
java.util.Calendar c = java.util.Calendar.getInstance();
c.setTime(date);
return c.get(java.util.Calendar.SECOND);
}
DAY_OF_WEEK_IN_MONTH get 和 set 的字段數(shù)字,指示當前月中的第幾個星期。
可以指定今天是當前月的第幾個星期哦!
我試了一下今天是當前月的第2周哈哈正確!
DAY_OF_WEEK get 和 set 的字段數(shù)字,指示一個星期中的某天。
我相信這個屬性會對我有幫助的哦!
public static int getDay(java.util.Date date) {
java.util.Calendar c = java.util.Calendar.getInstance();
c.setTime(date);
return c.get(java.util.Calendar.DAY_OF_WEEK);
}
我直接調(diào)用這個方法可以得到 今天是周三 返回的是4 因為是周日是從1開始的哦!
OK,我現(xiàn)在想了解一下 當你輸入:2008年5月第一周是從哪號到哪號的
OK,現(xiàn)在來分析一下當用戶輸入2008年5月份第一周是從幾號到幾號的問題了!
第一步:得到今天是哪年哪月哪號哪周都沒有問題了。
第二步:確定2008年5月份的一號是周幾?
WEEK_OF_YEAR get 和 set 的字段數(shù)字,指示當前年中的星期數(shù)。
可以確定今天是這一年中的第幾周哦哈哈。太強大了這個類
Calendar cal = Calendar.getInstance();
int month=cal.getActualMaximum(Calendar.DAY_OF_MONTH);
此方法可以得到當前月份的天數(shù)哦。非常地好用 而且我在潤年與平年的時候進行比較處理了發(fā)現(xiàn)能夠準確得到天數(shù)哦!
//獲得周一的日期
public static String getMonday(Date date){
Calendar c = Calendar.getInstance();
c.setTime(date);
c.set(Calendar.DAY_OF_WEEK,Calendar.MONDAY);
return new SimpleDateFormat("yyyy-MM-dd").format(c.getTime());
}
這個方法可以得到當前月份的周一的日
OK!剛剛在網(wǎng)上找了一份非常不錯的代碼現(xiàn)在整理如下:
/**下面的方法可以通過一個字符串構(gòu)造出來一個Date類型的數(shù)據(jù)出來!*/
public static Date strToDateLong(String strDate) {
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
ParsePosition pos = new ParsePosition(0);
Date strtodate = formatter.parse(strDate, pos);
return strtodate;
}
/**既然能夠構(gòu)造出來指定日期的時間變量那現(xiàn)在來分析一下指定某天與當天的時間差吧!*/
/**
* 得到二個日期間的間隔天數(shù)
*/
public static String getTwoDay(String sj1, String sj2) {
SimpleDateFormat myFormatter = new SimpleDateFormat("yyyy-MM-dd");
long day = 0;
try {
java.util.Date date = myFormatter.parse(sj1);
java.util.Date mydate = myFormatter.parse(sj2);
day = (date.getTime() - mydate.getTime()) / (24 * 60 * 60 * 1000);
} catch (Exception e) {
return "";
}
return day + "";
}
我在代碼中實現(xiàn)了可以發(fā)現(xiàn)結(jié)果是正確 的哦!
而且是能夠判斷出來潤年與否的哦。方便得多了哦!
OK!
/**通過這樣子我們可以構(gòu)造出來一個類似這種字符串類型的時間出來的哦!*/
public static Date strToDate(String strDate) {
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
ParsePosition pos = new ParsePosition(0);
Date strtodate = formatter.parse(strDate, pos);
return strtodate;
}
/**
* 獲得一個日期所在的周的星期幾的日期,如要找出2002年2月3日所在周的星期一是幾號
*
* @param sdate 所確定的日期形式2009-01-01
* @param num 要確定的是周幾(1表示周一2表示周二)
* @return
*/
public static String getWeek(String sdate, String num) {
// 再轉(zhuǎn)換為時間
Date dd = VeDate.strToDate(sdate);
Calendar c = Calendar.getInstance();
c.setTime(dd);
if (num.equals("1")) // 返回星期一所在的日期
c.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
else if (num.equals("2")) // 返回星期二所在的日期
c.set(Calendar.DAY_OF_WEEK, Calendar.TUESDAY);
else if (num.equals("3")) // 返回星期三所在的日期
c.set(Calendar.DAY_OF_WEEK, Calendar.WEDNESDAY);
else if (num.equals("4")) // 返回星期四所在的日期
c.set(Calendar.DAY_OF_WEEK, Calendar.THURSDAY);
else if (num.equals("5")) // 返回星期五所在的日期
c.set(Calendar.DAY_OF_WEEK, Calendar.FRIDAY);
else if (num.equals("6")) // 返回星期六所在的日期
c.set(Calendar.DAY_OF_WEEK, Calendar.SATURDAY);
else if (num.equals("0")) // 返回星期日所在的日期
c.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY);
return new SimpleDateFormat("yyyy-MM-dd").format(c.getTime());
}