?? dateutils.java
字號:
package huc.blog.util;
import java.util.Calendar;
import java.util.Date;
public class DateUtils {
public static Date getFirstTime(){
Calendar cal = Calendar.getInstance();
cal.set(Calendar.HOUR_OF_DAY,0);
cal.set(Calendar.MINUTE,0);
cal.set(Calendar.SECOND,0);
cal.set(Calendar.DATE, cal.getActualMinimum(cal.DATE));
return cal.getTime();
}
public static Date getLastTime(){
Calendar cal = Calendar.getInstance();
cal.roll(Calendar.MONTH, true);
cal.set(Calendar.HOUR_OF_DAY,0);
cal.set(Calendar.MINUTE,0);
cal.set(Calendar.SECOND,0);
cal.set(Calendar.DATE, cal.getActualMinimum(cal.DATE));
return cal.getTime();
}
//dateString格式yyyyMM
public static Date getFirstTime(String dateString){
Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, Integer.parseInt(dateString.substring(0,4)));
cal.set(Calendar.MONTH, Integer.parseInt(dateString.substring(4)) - 1);
cal.set(Calendar.HOUR_OF_DAY,0);
cal.set(Calendar.MINUTE,0);
cal.set(Calendar.SECOND,0);
cal.set(Calendar.DATE, cal.getActualMinimum(cal.DATE));
return cal.getTime();
}
//dateString格式yyyyMM
public static Date getLastTime(String dateString){
Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, Integer.parseInt(dateString.substring(0,4)));
cal.set(Calendar.MONTH, Integer.parseInt(dateString.substring(4)));
cal.set(Calendar.HOUR_OF_DAY,0);
cal.set(Calendar.MINUTE,0);
cal.set(Calendar.SECOND,0);
cal.set(Calendar.DATE, cal.getActualMinimum(cal.DATE));
return cal.getTime();
}
/**
* 獲得月份加1的時間。
* 例如,dateString="200503",返回值為"200504";dateString="200511",返回值為"200512"
* @param dateString格式yyyyMM
* @param flag true:up;false:down
* 返回格式yyyyMM
*/
public static String roleTime(String dateString, boolean flag){
Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, Integer.parseInt(dateString.substring(0,4)));
if(flag)
cal.set(Calendar.MONTH, Integer.parseInt(dateString.substring(4)));
else
cal.set(Calendar.MONTH, Integer.parseInt(dateString.substring(4)) - 2);
cal.set(Calendar.DATE, cal.getActualMinimum(cal.DATE));
cal.set(Calendar.HOUR_OF_DAY,0);
cal.set(Calendar.MINUTE,0);
cal.set(Calendar.SECOND,0);
String time = cal.getTime().toLocaleString();
StringBuffer temp = new StringBuffer();
temp.append(time.substring(0,4));
temp.append(time.substring(5,time.indexOf("-",5)));
if(temp.length() < 6){
temp.insert(4, "0");
}
return temp.toString();
}
/**
* 比較string時間是否在當前時間之前
* @param dateString 格式yyyyMM
* @param flag true:before;false:after
* @return true - dateString在當前月份的最后一天的時間前或后
* false - dateString在當前月份的最后一天或在當前月份的最后一天的時間之后或前
*/
public static boolean compareTime(String dateString, boolean flag){
Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, Integer.parseInt(dateString.substring(0,4)));
cal.set(Calendar.MONTH, Integer.parseInt(dateString.substring(4)) - 1);
cal.set(Calendar.DATE, cal.getActualMinimum(cal.DATE));
cal.set(Calendar.HOUR_OF_DAY,0);
cal.set(Calendar.MINUTE,0);
cal.set(Calendar.SECOND,0);
//當前月份的最后一天的時間
Calendar currentCal = Calendar.getInstance();
currentCal.roll(Calendar.MONTH, true);
currentCal.set(Calendar.DATE, currentCal.getActualMinimum(currentCal.DATE));
currentCal.set(Calendar.HOUR_OF_DAY,0);
currentCal.set(Calendar.MINUTE,0);
currentCal.set(Calendar.SECOND,0);
if(flag)
return cal.before(currentCal);
else
return cal.after(currentCal);
}
/**
* 比較兩個時間字符串的前后
* @param dateString1 格式yyyyMM
* @param dateString2 格式yyyyMM
* @return true - dateString1在dateString2前或dateString1=dateString2
* false - 在dateString2之后
*/
public static boolean compareTime(String dateString1, String dateString2){
Calendar cal1 = Calendar.getInstance();
cal1.set(Calendar.YEAR, Integer.parseInt(dateString1.substring(0,4)));
cal1.set(Calendar.MONTH, Integer.parseInt(dateString1.substring(4)) - 1);
cal1.set(Calendar.DATE, cal1.getActualMinimum(cal1.DATE));
cal1.set(Calendar.HOUR_OF_DAY,0);
cal1.set(Calendar.MINUTE,0);
cal1.set(Calendar.SECOND,0);
Calendar cal2 = Calendar.getInstance();
cal2.set(Calendar.YEAR, Integer.parseInt(dateString2.substring(0,4)));
cal2.set(Calendar.MONTH, Integer.parseInt(dateString2.substring(4)) - 1);
cal2.set(Calendar.DATE, cal2.getActualMinimum(cal2.DATE));
cal2.set(Calendar.HOUR_OF_DAY,0);
cal2.set(Calendar.MINUTE,0);
cal2.set(Calendar.SECOND,0);
return cal1.before(cal2) || cal1.equals(cal2);
}
/**
* 將java.util.Date轉化為yyyyMM
* @param dateString
* @return
*/
public static String format(Date date){
String dateString = date.toLocaleString();
StringBuffer temp = new StringBuffer();
temp.append(dateString.substring(0,4));
temp.append(dateString.substring(5,dateString.indexOf("-", 5)));
if(temp.length() < 6){
temp.insert(4, "0");
}
return temp.toString();
}
/**
* 將yyyy-MM-dd hh:mm:ss轉化為yyyyMM
* @param dateString
* @return
*/
public static String formatTo(String dateString){
StringBuffer temp = new StringBuffer();
temp.append(dateString.substring(0,4));
temp.append(dateString.substring(5,7));
return temp.toString();
}
/**
* 將yyyyMM轉化為java.util.Date
* @param dateString
* @return
*/
public static Date formatToDate(String dateString){
Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, Integer.parseInt(dateString.substring(0,4)));
cal.set(Calendar.MONTH, Integer.parseInt(dateString.substring(4)) - 1);
cal.set(Calendar.DATE, cal.getActualMinimum(cal.DATE));
cal.set(Calendar.HOUR_OF_DAY,0);
cal.set(Calendar.MINUTE,0);
cal.set(Calendar.SECOND,0);
return cal.getTime();
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -