java.util.*; import?java.text.*;
import?java.text.*; import?java.util.Calendar;?
import?java.util.Calendar;?
 public?class?VeDate?{
public?class?VeDate?{ ?/**
?/** ??*?获取现在时间
??*?获取现在时间 ??*?
??*? ??*?@return?返回时间类型?yyyy-MM-dd?HH:mm:ss
??*?@return?返回时间类型?yyyy-MM-dd?HH:mm:ss ??*/
??*/ ?public?static?Date?getNowDate()?{
?public?static?Date?getNowDate()?{ ??Date?currentTime?=?new?Date();
??Date?currentTime?=?new?Date(); ??SimpleDateFormat?formatter?=?new?SimpleDateFormat("yyyy-MM-dd?HH:mm:ss");
??SimpleDateFormat?formatter?=?new?SimpleDateFormat("yyyy-MM-dd?HH:mm:ss"); ??String?dateString?=?formatter.format(currentTime);
??String?dateString?=?formatter.format(currentTime); ??ParsePosition?pos?=?new?ParsePosition(8);
??ParsePosition?pos?=?new?ParsePosition(8); ??Date?currentTime_2?=?formatter.parse(dateString,?pos);
??Date?currentTime_2?=?formatter.parse(dateString,?pos); ??return?currentTime_2;
??return?currentTime_2; ?}?
?}?
 ?/**
?/** ??*?获取现在时间
??*?获取现在时间 ??*?
??*? ??*?@return返回短时间格式?yyyy-MM-dd
??*?@return返回短时间格式?yyyy-MM-dd ??*/
??*/ ?public?static?Date?getNowDateShort()?{
?public?static?Date?getNowDateShort()?{ ??Date?currentTime?=?new?Date();
??Date?currentTime?=?new?Date(); ??SimpleDateFormat?formatter?=?new?SimpleDateFormat("yyyy-MM-dd");
??SimpleDateFormat?formatter?=?new?SimpleDateFormat("yyyy-MM-dd"); ??String?dateString?=?formatter.format(currentTime);
??String?dateString?=?formatter.format(currentTime); ??ParsePosition?pos?=?new?ParsePosition(8);
??ParsePosition?pos?=?new?ParsePosition(8); ??Date?currentTime_2?=?formatter.parse(dateString,?pos);
??Date?currentTime_2?=?formatter.parse(dateString,?pos); ??return?currentTime_2;
??return?currentTime_2; ?}?
?}?
 ?/**
?/** ??*?获取现在时间
??*?获取现在时间 ??*?
??*? ??*?@return返回字符串格式?yyyy-MM-dd?HH:mm:ss
??*?@return返回字符串格式?yyyy-MM-dd?HH:mm:ss ??*/
??*/ ?public?static?String?getStringDate()?{
?public?static?String?getStringDate()?{ ??Date?currentTime?=?new?Date();
??Date?currentTime?=?new?Date(); ??SimpleDateFormat?formatter?=?new?SimpleDateFormat("yyyy-MM-dd?HH:mm:ss");
??SimpleDateFormat?formatter?=?new?SimpleDateFormat("yyyy-MM-dd?HH:mm:ss"); ??String?dateString?=?formatter.format(currentTime);
??String?dateString?=?formatter.format(currentTime); ??return?dateString;
??return?dateString; ?}?
?}?
 ?/**
?/** ??*?获取现在时间
??*?获取现在时间 ??*?
??*? ??*?@return?返回短时间字符串格式yyyy-MM-dd
??*?@return?返回短时间字符串格式yyyy-MM-dd ??*/
??*/ ?public?static?String?getStringDateShort()?{
?public?static?String?getStringDateShort()?{ ??Date?currentTime?=?new?Date();
??Date?currentTime?=?new?Date(); ??SimpleDateFormat?formatter?=?new?SimpleDateFormat("yyyy-MM-dd");
??SimpleDateFormat?formatter?=?new?SimpleDateFormat("yyyy-MM-dd"); ??String?dateString?=?formatter.format(currentTime);
??String?dateString?=?formatter.format(currentTime); ??return?dateString;
??return?dateString; ?}?
?}?
 ?/**
?/** ??*?获取时间?小时:分;秒?HH:mm:ss
??*?获取时间?小时:分;秒?HH:mm:ss ??*?
??*? ??*?@return
??*?@return ??*/
??*/ ?public?static?String?getTimeShort()?{
?public?static?String?getTimeShort()?{ ??SimpleDateFormat?formatter?=?new?SimpleDateFormat("HH:mm:ss");
??SimpleDateFormat?formatter?=?new?SimpleDateFormat("HH:mm:ss"); ??Date?currentTime?=?new?Date();
??Date?currentTime?=?new?Date(); ??String?dateString?=?formatter.format(currentTime);
??String?dateString?=?formatter.format(currentTime); ??return?dateString;
??return?dateString; ?}?
?}?
 ?/**
?/** ??*?将长时间格式字符串转换为时间?yyyy-MM-dd?HH:mm:ss
??*?将长时间格式字符串转换为时间?yyyy-MM-dd?HH:mm:ss ??*?
??*? ??*?@param?strDate
??*?@param?strDate ??*?@return
??*?@return ??*/
??*/ ?public?static?Date?strToDateLong(String?strDate)?{
?public?static?Date?strToDateLong(String?strDate)?{ ??SimpleDateFormat?formatter?=?new?SimpleDateFormat("yyyy-MM-dd?HH:mm:ss");
??SimpleDateFormat?formatter?=?new?SimpleDateFormat("yyyy-MM-dd?HH:mm:ss"); ??ParsePosition?pos?=?new?ParsePosition(0);
??ParsePosition?pos?=?new?ParsePosition(0); ??Date?strtodate?=?formatter.parse(strDate,?pos);
??Date?strtodate?=?formatter.parse(strDate,?pos); ??return?strtodate;
??return?strtodate; ?}?
?}?
 ?/**
?/** ??*?将长时间格式时间转换为字符串?yyyy-MM-dd?HH:mm:ss
??*?将长时间格式时间转换为字符串?yyyy-MM-dd?HH:mm:ss ??*?
??*? ??*?@param?dateDate
??*?@param?dateDate ??*?@return
??*?@return ??*/
??*/ ?public?static?String?dateToStrLong(java.util.Date?dateDate)?{
?public?static?String?dateToStrLong(java.util.Date?dateDate)?{ ??SimpleDateFormat?formatter?=?new?SimpleDateFormat("yyyy-MM-dd?HH:mm:ss");
??SimpleDateFormat?formatter?=?new?SimpleDateFormat("yyyy-MM-dd?HH:mm:ss"); ??String?dateString?=?formatter.format(dateDate);
??String?dateString?=?formatter.format(dateDate); ??return?dateString;
??return?dateString; ?}?
?}?
 ?/**
?/** ??*?将短时间格式时间转换为字符串?yyyy-MM-dd
??*?将短时间格式时间转换为字符串?yyyy-MM-dd ??*?
??*? ??*?@param?dateDate
??*?@param?dateDate ??*?@param?k
??*?@param?k ??*?@return
??*?@return ??*/
??*/ ?public?static?String?dateToStr(java.util.Date?dateDate)?{
?public?static?String?dateToStr(java.util.Date?dateDate)?{ ??SimpleDateFormat?formatter?=?new?SimpleDateFormat("yyyy-MM-dd");
??SimpleDateFormat?formatter?=?new?SimpleDateFormat("yyyy-MM-dd"); ??String?dateString?=?formatter.format(dateDate);
??String?dateString?=?formatter.format(dateDate); ??return?dateString;
??return?dateString; ?}?
?}?
 ?/**
?/** ??*?将短时间格式字符串转换为时间?yyyy-MM-dd?
??*?将短时间格式字符串转换为时间?yyyy-MM-dd? ??*?
??*? ??*?@param?strDate
??*?@param?strDate ??*?@return
??*?@return ??*/
??*/ ?public?static?Date?strToDate(String?strDate)?{
?public?static?Date?strToDate(String?strDate)?{ ??SimpleDateFormat?formatter?=?new?SimpleDateFormat("yyyy-MM-dd");
??SimpleDateFormat?formatter?=?new?SimpleDateFormat("yyyy-MM-dd"); ??ParsePosition?pos?=?new?ParsePosition(0);
??ParsePosition?pos?=?new?ParsePosition(0); ??Date?strtodate?=?formatter.parse(strDate,?pos);
??Date?strtodate?=?formatter.parse(strDate,?pos); ??return?strtodate;
??return?strtodate; ?}?
?}?
 ?/**
?/** ??*?得到现在时间
??*?得到现在时间 ??*?
??*? ??*?@return
??*?@return ??*/
??*/ ?public?static?Date?getNow()?{
?public?static?Date?getNow()?{ ??Date?currentTime?=?new?Date();
??Date?currentTime?=?new?Date(); ??return?currentTime;
??return?currentTime; ?}?
?}?
 ?/**
?/** ??*?提取一个月中的最后一天
??*?提取一个月中的最后一天 ??*?
??*? ??*?@param?day
??*?@param?day ??*?@return
??*?@return ??*/
??*/ ?public?static?Date?getLastDate(long?day)?{
?public?static?Date?getLastDate(long?day)?{ ??Date?date?=?new?Date();
??Date?date?=?new?Date(); ??long?date_3_hm?=?date.getTime()?-?3600000?*?34?*?day;
??long?date_3_hm?=?date.getTime()?-?3600000?*?34?*?day; ??Date?date_3_hm_date?=?new?Date(date_3_hm);
??Date?date_3_hm_date?=?new?Date(date_3_hm); ??return?date_3_hm_date;
??return?date_3_hm_date; ?}?
?}?
 ?/**
?/** ??*?得到现在时间
??*?得到现在时间 ??*?
??*? ??*?@return?字符串?yyyyMMdd?HHmmss
??*?@return?字符串?yyyyMMdd?HHmmss ??*/
??*/ ?public?static?String?getStringToday()?{
?public?static?String?getStringToday()?{ ??Date?currentTime?=?new?Date();
??Date?currentTime?=?new?Date(); ??SimpleDateFormat?formatter?=?new?SimpleDateFormat("yyyyMMdd?HHmmss");
??SimpleDateFormat?formatter?=?new?SimpleDateFormat("yyyyMMdd?HHmmss"); ??String?dateString?=?formatter.format(currentTime);
??String?dateString?=?formatter.format(currentTime); ??return?dateString;
??return?dateString; ?}?
?}?
 ?/**
?/** ??*?得到现在小时
??*?得到现在小时 ??*/
??*/ ?public?static?String?getHour()?{
?public?static?String?getHour()?{ ??Date?currentTime?=?new?Date();
??Date?currentTime?=?new?Date(); ??SimpleDateFormat?formatter?=?new?SimpleDateFormat("yyyy-MM-dd?HH:mm:ss");
??SimpleDateFormat?formatter?=?new?SimpleDateFormat("yyyy-MM-dd?HH:mm:ss"); ??String?dateString?=?formatter.format(currentTime);
??String?dateString?=?formatter.format(currentTime); ??String?hour;
??String?hour; ??hour?=?dateString.substring(11,?13);
??hour?=?dateString.substring(11,?13); ??return?hour;
??return?hour; ?}?
?}?
 ?/**
?/** ??*?得到现在分钟
??*?得到现在分钟 ??*?
??*? ??*?@return
??*?@return ??*/
??*/ ?public?static?String?getTime()?{
?public?static?String?getTime()?{ ??Date?currentTime?=?new?Date();
??Date?currentTime?=?new?Date(); ??SimpleDateFormat?formatter?=?new?SimpleDateFormat("yyyy-MM-dd?HH:mm:ss");
??SimpleDateFormat?formatter?=?new?SimpleDateFormat("yyyy-MM-dd?HH:mm:ss"); ??String?dateString?=?formatter.format(currentTime);
??String?dateString?=?formatter.format(currentTime); ??String?min;
??String?min; ??min?=?dateString.substring(14,?16);
??min?=?dateString.substring(14,?16); ??return?min;
??return?min; ?}?
?}?
 ?/**
?/** ??*?根据用户传入的时间表示格式,返回当前时间的格式?如果是yyyyMMdd,注意字母y不能大写。
??*?根据用户传入的时间表示格式,返回当前时间的格式?如果是yyyyMMdd,注意字母y不能大写。 ??*?
??*? ??*?@param?sformat
??*?@param?sformat ??*????????????yyyyMMddhhmmss
??*????????????yyyyMMddhhmmss ??*?@return
??*?@return ??*/
??*/ ?public?static?String?getUserDate(String?sformat)?{
?public?static?String?getUserDate(String?sformat)?{ ??Date?currentTime?=?new?Date();
??Date?currentTime?=?new?Date(); ??SimpleDateFormat?formatter?=?new?SimpleDateFormat(sformat);
??SimpleDateFormat?formatter?=?new?SimpleDateFormat(sformat); ??String?dateString?=?formatter.format(currentTime);
??String?dateString?=?formatter.format(currentTime); ??return?dateString;
??return?dateString; ?}?
?}?
 ?/**
?/** ??*?二个小时时间间的差值,必须保证二个时间都是"HH:MM"的格式,返回字符型的分钟
??*?二个小时时间间的差值,必须保证二个时间都是"HH:MM"的格式,返回字符型的分钟 ??*/
??*/ ?public?static?String?getTwoHour(String?st1,?String?st2)?{
?public?static?String?getTwoHour(String?st1,?String?st2)?{ ??String[]?kk?=?null;
??String[]?kk?=?null; ??String[]?jj?=?null;
??String[]?jj?=?null; ??kk?=?st1.split(":");
??kk?=?st1.split(":"); ??jj?=?st2.split(":");
??jj?=?st2.split(":"); ??if?(Integer.parseInt(kk[0])?<?Integer.parseInt(jj[0]))
??if?(Integer.parseInt(kk[0])?<?Integer.parseInt(jj[0])) ???return?"0";
???return?"0"; ??else?{
??else?{ ???double?y?=?Double.parseDouble(kk[0])?+?Double.parseDouble(kk[1])?/?60;
???double?y?=?Double.parseDouble(kk[0])?+?Double.parseDouble(kk[1])?/?60; ???double?u?=?Double.parseDouble(jj[0])?+?Double.parseDouble(jj[1])?/?60;
???double?u?=?Double.parseDouble(jj[0])?+?Double.parseDouble(jj[1])?/?60; ???if?((y?-?u)?>?0)
???if?((y?-?u)?>?0) ????return?y?-?u?+?"";
????return?y?-?u?+?""; ???else
???else ????return?"0";
????return?"0"; ??}
??} ?}?
?}?
 ?/**
?/** ??*?得到二个日期间的间隔天数
??*?得到二个日期间的间隔天数 ??*/
??*/ ?public?static?String?getTwoDay(String?sj1,?String?sj2)?{
?public?static?String?getTwoDay(String?sj1,?String?sj2)?{ ??SimpleDateFormat?myFormatter?=?new?SimpleDateFormat("yyyy-MM-dd");
??SimpleDateFormat?myFormatter?=?new?SimpleDateFormat("yyyy-MM-dd"); ??long?day?=?0;
??long?day?=?0; ??try?{
??try?{ ???java.util.Date?date?=?myFormatter.parse(sj1);
???java.util.Date?date?=?myFormatter.parse(sj1); ???java.util.Date?mydate?=?myFormatter.parse(sj2);
???java.util.Date?mydate?=?myFormatter.parse(sj2); ???day?=?(date.getTime()?-?mydate.getTime())?/?(24?*?60?*?60?*?1000);
???day?=?(date.getTime()?-?mydate.getTime())?/?(24?*?60?*?60?*?1000); ??}?catch?(Exception?e)?{
??}?catch?(Exception?e)?{ ???return?"";
???return?""; ??}
??} ??return?day?+?"";
??return?day?+?""; ?}?
?}?
 ?/**
?/** ??*?时间前推或后推分钟,其中JJ表示分钟.
??*?时间前推或后推分钟,其中JJ表示分钟. ??*/
??*/ ?public?static?String?getPreTime(String?sj1,?String?jj)?{
?public?static?String?getPreTime(String?sj1,?String?jj)?{ ??SimpleDateFormat?format?=?new?SimpleDateFormat("yyyy-MM-dd?HH:mm:ss");
??SimpleDateFormat?format?=?new?SimpleDateFormat("yyyy-MM-dd?HH:mm:ss"); ??String?mydate1?=?"";
??String?mydate1?=?""; ??try?{
??try?{ ???Date?date1?=?format.parse(sj1);
???Date?date1?=?format.parse(sj1); ???long?Time?=?(date1.getTime()?/?1000)?+?Integer.parseInt(jj)?*?60;
???long?Time?=?(date1.getTime()?/?1000)?+?Integer.parseInt(jj)?*?60; ???date1.setTime(Time?*?1000);
???date1.setTime(Time?*?1000); ???mydate1?=?format.format(date1);
???mydate1?=?format.format(date1); ??}?catch?(Exception?e)?{
??}?catch?(Exception?e)?{ ??}
??} ??return?mydate1;
??return?mydate1; ?}?
?}?
 ?/**
?/** ??*?得到一个时间延后或前移几天的时间,nowdate为时间,delay为前移或后延的天数
??*?得到一个时间延后或前移几天的时间,nowdate为时间,delay为前移或后延的天数 ??*/
??*/ ?public?static?String?getNextDay(String?nowdate,?String?delay)?{
?public?static?String?getNextDay(String?nowdate,?String?delay)?{ ??try{
??try{ ??SimpleDateFormat?format?=?new?SimpleDateFormat("yyyy-MM-dd");
??SimpleDateFormat?format?=?new?SimpleDateFormat("yyyy-MM-dd"); ??String?mdate?=?"";
??String?mdate?=?""; ??Date?d?=?strToDate(nowdate);
??Date?d?=?strToDate(nowdate); ??long?myTime?=?(d.getTime()?/?1000)?+?Integer.parseInt(delay)?*?24?*?60?*?60;
??long?myTime?=?(d.getTime()?/?1000)?+?Integer.parseInt(delay)?*?24?*?60?*?60; ??d.setTime(myTime?*?1000);
??d.setTime(myTime?*?1000); ??mdate?=?format.format(d);
??mdate?=?format.format(d); ??return?mdate;
??return?mdate; ??}catch(Exception?e){
??}catch(Exception?e){ ???return?"";
???return?""; ??}
??} ?}?
?}?
 ?/**
?/** ??*?判断是否润年
??*?判断是否润年 ??*?
??*? ??*?@param?ddate
??*?@param?ddate ??*?@return
??*?@return ??*/
??*/ ?public?static?boolean?isLeapYear(String?ddate)?{?
?public?static?boolean?isLeapYear(String?ddate)?{?
 ??/**
??/** ???*?详细设计:?1.被400整除是闰年,否则:?2.不能被4整除则不是闰年?3.能被4整除同时不能被100整除则是闰年
???*?详细设计:?1.被400整除是闰年,否则:?2.不能被4整除则不是闰年?3.能被4整除同时不能被100整除则是闰年 ???*?3.能被4整除同时能被100整除则不是闰年
???*?3.能被4整除同时能被100整除则不是闰年 ???*/
???*/ ??Date?d?=?strToDate(ddate);
??Date?d?=?strToDate(ddate); ??GregorianCalendar?gc?=?(GregorianCalendar)?Calendar.getInstance();
??GregorianCalendar?gc?=?(GregorianCalendar)?Calendar.getInstance(); ??gc.setTime(d);
??gc.setTime(d); ??int?year?=?gc.get(Calendar.YEAR);
??int?year?=?gc.get(Calendar.YEAR); ??if?((year?%?400)?==?0)
??if?((year?%?400)?==?0) ???return?true;
???return?true; ??else?if?((year?%?4)?==?0)?{
??else?if?((year?%?4)?==?0)?{ ???if?((year?%?100)?==?0)
???if?((year?%?100)?==?0) ????return?false;
????return?false; ???else
???else ????return?true;
????return?true; ??}?else
??}?else ???return?false;
???return?false; ?}?
?}?
 ?/**
?/** ??*?返回美国时间格式?26?Apr?2006
??*?返回美国时间格式?26?Apr?2006 ??*?
??*? ??*?@param?str
??*?@param?str ??*?@return
??*?@return ??*/
??*/ ?public?static?String?getEDate(String?str)?{
?public?static?String?getEDate(String?str)?{ ??SimpleDateFormat?formatter?=?new?SimpleDateFormat("yyyy-MM-dd");
??SimpleDateFormat?formatter?=?new?SimpleDateFormat("yyyy-MM-dd"); ??ParsePosition?pos?=?new?ParsePosition(0);
??ParsePosition?pos?=?new?ParsePosition(0); ??Date?strtodate?=?formatter.parse(str,?pos);
??Date?strtodate?=?formatter.parse(str,?pos); ??String?j?=?strtodate.toString();
??String?j?=?strtodate.toString(); ??String[]?k?=?j.split("?");
??String[]?k?=?j.split("?"); ??return?k[2]?+?k[1].toUpperCase()?+?k[5].substring(2,?4);
??return?k[2]?+?k[1].toUpperCase()?+?k[5].substring(2,?4); ?}?
?}?
 ?/**
?/** ??*?获取一个月的最后一天
??*?获取一个月的最后一天 ??*?
??*? ??*?@param?dat
??*?@param?dat ??*?@return
??*?@return ??*/
??*/ ?public?static?String?getEndDateOfMonth(String?dat)?{//?yyyy-MM-dd
?public?static?String?getEndDateOfMonth(String?dat)?{//?yyyy-MM-dd ??String?str?=?dat.substring(0,?8);
??String?str?=?dat.substring(0,?8); ??String?month?=?dat.substring(5,?7);
??String?month?=?dat.substring(5,?7); ??int?mon?=?Integer.parseInt(month);
??int?mon?=?Integer.parseInt(month); ??if?(mon?==?1?||?mon?==?3?||?mon?==?5?||?mon?==?7?||?mon?==?8?||?mon?==?10?||?mon?==?12)?{
??if?(mon?==?1?||?mon?==?3?||?mon?==?5?||?mon?==?7?||?mon?==?8?||?mon?==?10?||?mon?==?12)?{ ???str?+=?"31";
???str?+=?"31"; ??}?else?if?(mon?==?4?||?mon?==?6?||?mon?==?9?||?mon?==?11)?{
??}?else?if?(mon?==?4?||?mon?==?6?||?mon?==?9?||?mon?==?11)?{ ???str?+=?"30";
???str?+=?"30"; ??}?else?{
??}?else?{ ???if?(isLeapYear(dat))?{
???if?(isLeapYear(dat))?{ ????str?+=?"29";
????str?+=?"29"; ???}?else?{
???}?else?{ ????str?+=?"28";
????str?+=?"28"; ???}
???} ??}
??} ??return?str;
??return?str; ?}?
?}?
 ?/**
?/** ??*?判断二个时间是否在同一个周
??*?判断二个时间是否在同一个周 ??*?
??*? ??*?@param?date1
??*?@param?date1 ??*?@param?date2
??*?@param?date2 ??*?@return
??*?@return ??*/
??*/ ?public?static?boolean?isSameWeekDates(Date?date1,?Date?date2)?{
?public?static?boolean?isSameWeekDates(Date?date1,?Date?date2)?{ ??Calendar?cal1?=?Calendar.getInstance();
??Calendar?cal1?=?Calendar.getInstance(); ??Calendar?cal2?=?Calendar.getInstance();
??Calendar?cal2?=?Calendar.getInstance(); ??cal1.setTime(date1);
??cal1.setTime(date1); ??cal2.setTime(date2);
??cal2.setTime(date2); ??int?subYear?=?cal1.get(Calendar.YEAR)?-?cal2.get(Calendar.YEAR);
??int?subYear?=?cal1.get(Calendar.YEAR)?-?cal2.get(Calendar.YEAR); ??if?(0?==?subYear)?{
??if?(0?==?subYear)?{ ???if?(cal1.get(Calendar.WEEK_OF_YEAR)?==?cal2.get(Calendar.WEEK_OF_YEAR))
???if?(cal1.get(Calendar.WEEK_OF_YEAR)?==?cal2.get(Calendar.WEEK_OF_YEAR)) ????return?true;
????return?true; ??}?else?if?(1?==?subYear?&&?11?==?cal2.get(Calendar.MONTH))?{
??}?else?if?(1?==?subYear?&&?11?==?cal2.get(Calendar.MONTH))?{ ???//?如果12月的最后一周横跨来年第一周的话则最后一周即算做来年的第一周
???//?如果12月的最后一周横跨来年第一周的话则最后一周即算做来年的第一周 ???if?(cal1.get(Calendar.WEEK_OF_YEAR)?==?cal2.get(Calendar.WEEK_OF_YEAR))
???if?(cal1.get(Calendar.WEEK_OF_YEAR)?==?cal2.get(Calendar.WEEK_OF_YEAR)) ????return?true;
????return?true; ??}?else?if?(-1?==?subYear?&&?11?==?cal1.get(Calendar.MONTH))?{
??}?else?if?(-1?==?subYear?&&?11?==?cal1.get(Calendar.MONTH))?{ ???if?(cal1.get(Calendar.WEEK_OF_YEAR)?==?cal2.get(Calendar.WEEK_OF_YEAR))
???if?(cal1.get(Calendar.WEEK_OF_YEAR)?==?cal2.get(Calendar.WEEK_OF_YEAR)) ????return?true;
????return?true; ??}
??} ??return?false;
??return?false; ?}?
?}?
 ?/**
?/** ??*?产生周序列,即得到当前时间所在的年度是第几周
??*?产生周序列,即得到当前时间所在的年度是第几周 ??*?
??*? ??*?@return
??*?@return ??*/
??*/ ?public?static?String?getSeqWeek()?{
?public?static?String?getSeqWeek()?{ ??Calendar?c?=?Calendar.getInstance(Locale.CHINA);
??Calendar?c?=?Calendar.getInstance(Locale.CHINA); ??String?week?=?Integer.toString(c.get(Calendar.WEEK_OF_YEAR));
??String?week?=?Integer.toString(c.get(Calendar.WEEK_OF_YEAR)); ??if?(week.length()?==?1)
??if?(week.length()?==?1) ???week?=?"0"?+?week;
???week?=?"0"?+?week; ??String?year?=?Integer.toString(c.get(Calendar.YEAR));
??String?year?=?Integer.toString(c.get(Calendar.YEAR)); ??return?year?+?week;
??return?year?+?week; ?}?
?}?
 ?/**
?/** ??*?获得一个日期所在的周的星期几的日期,如要找出2002年2月3日所在周的星期一是几号
??*?获得一个日期所在的周的星期几的日期,如要找出2002年2月3日所在周的星期一是几号 ??*?
??*? ??*?@param?sdate
??*?@param?sdate ??*?@param?num
??*?@param?num ??*?@return
??*?@return ??*/
??*/ ?public?static?String?getWeek(String?sdate,?String?num)?{
?public?static?String?getWeek(String?sdate,?String?num)?{ ??//?再转换为时间
??//?再转换为时间 ??Date?dd?=?VeDate.strToDate(sdate);
??Date?dd?=?VeDate.strToDate(sdate); ??Calendar?c?=?Calendar.getInstance();
??Calendar?c?=?Calendar.getInstance(); ??c.setTime(dd);
??c.setTime(dd); ??if?(num.equals("1"))?//?返回星期一所在的日期
??if?(num.equals("1"))?//?返回星期一所在的日期 ???c.set(Calendar.DAY_OF_WEEK,?Calendar.MONDAY);
???c.set(Calendar.DAY_OF_WEEK,?Calendar.MONDAY); ??else?if?(num.equals("2"))?//?返回星期二所在的日期
??else?if?(num.equals("2"))?//?返回星期二所在的日期 ???c.set(Calendar.DAY_OF_WEEK,?Calendar.TUESDAY);
???c.set(Calendar.DAY_OF_WEEK,?Calendar.TUESDAY); ??else?if?(num.equals("3"))?//?返回星期三所在的日期
??else?if?(num.equals("3"))?//?返回星期三所在的日期 ???c.set(Calendar.DAY_OF_WEEK,?Calendar.WEDNESDAY);
???c.set(Calendar.DAY_OF_WEEK,?Calendar.WEDNESDAY); ??else?if?(num.equals("4"))?//?返回星期四所在的日期
??else?if?(num.equals("4"))?//?返回星期四所在的日期 ???c.set(Calendar.DAY_OF_WEEK,?Calendar.THURSDAY);
???c.set(Calendar.DAY_OF_WEEK,?Calendar.THURSDAY); ??else?if?(num.equals("5"))?//?返回星期五所在的日期
??else?if?(num.equals("5"))?//?返回星期五所在的日期 ???c.set(Calendar.DAY_OF_WEEK,?Calendar.FRIDAY);
???c.set(Calendar.DAY_OF_WEEK,?Calendar.FRIDAY); ??else?if?(num.equals("6"))?//?返回星期六所在的日期
??else?if?(num.equals("6"))?//?返回星期六所在的日期 ???c.set(Calendar.DAY_OF_WEEK,?Calendar.SATURDAY);
???c.set(Calendar.DAY_OF_WEEK,?Calendar.SATURDAY); ??else?if?(num.equals("0"))?//?返回星期日所在的日期
??else?if?(num.equals("0"))?//?返回星期日所在的日期 ???c.set(Calendar.DAY_OF_WEEK,?Calendar.SUNDAY);
???c.set(Calendar.DAY_OF_WEEK,?Calendar.SUNDAY); ??return?new?SimpleDateFormat("yyyy-MM-dd").format(c.getTime());
??return?new?SimpleDateFormat("yyyy-MM-dd").format(c.getTime()); ?}?
?}?
 ?/**
?/** ??*?根据一个日期,返回是星期几的字符串
??*?根据一个日期,返回是星期几的字符串 ??*?
??*? ??*?@param?sdate
??*?@param?sdate ??*?@return
??*?@return ??*/
??*/ ?public?static?String?getWeek(String?sdate)?{
?public?static?String?getWeek(String?sdate)?{ ??//?再转换为时间
??//?再转换为时间 ??Date?date?=?VeDate.strToDate(sdate);
??Date?date?=?VeDate.strToDate(sdate); ??Calendar?c?=?Calendar.getInstance();
??Calendar?c?=?Calendar.getInstance(); ??c.setTime(date);
??c.setTime(date); ??//?int?hour=c.get(Calendar.DAY_OF_WEEK);
??//?int?hour=c.get(Calendar.DAY_OF_WEEK); ??//?hour中存的就是星期几了,其范围?1~7
??//?hour中存的就是星期几了,其范围?1~7 ??//?1=星期日?7=星期六,其他类推
??//?1=星期日?7=星期六,其他类推 ??return?new?SimpleDateFormat("EEEE").format(c.getTime());
??return?new?SimpleDateFormat("EEEE").format(c.getTime()); ?}
?} ?public?static?String?getWeekStr(String?sdate){
?public?static?String?getWeekStr(String?sdate){ ??String?str?=?"";
??String?str?=?""; ??str?=?VeDate.getWeek(sdate);
??str?=?VeDate.getWeek(sdate); ??if("1".equals(str)){
??if("1".equals(str)){ ???str?=?"星期日";
???str?=?"星期日"; ??}else?if("2".equals(str)){
??}else?if("2".equals(str)){ ???str?=?"星期一";
???str?=?"星期一"; ??}else?if("3".equals(str)){
??}else?if("3".equals(str)){ ???str?=?"星期二";
???str?=?"星期二"; ??}else?if("4".equals(str)){
??}else?if("4".equals(str)){ ???str?=?"星期三";
???str?=?"星期三"; ??}else?if("5".equals(str)){
??}else?if("5".equals(str)){ ???str?=?"星期四";
???str?=?"星期四"; ??}else?if("6".equals(str)){
??}else?if("6".equals(str)){ ???str?=?"星期五";
???str?=?"星期五"; ??}else?if("7".equals(str)){
??}else?if("7".equals(str)){ ???str?=?"星期六";
???str?=?"星期六"; ??}
??} ??return?str;
??return?str; ?}?
?}?
 ?/**
?/** ??*?两个时间之间的天数
??*?两个时间之间的天数 ??*?
??*? ??*?@param?date1
??*?@param?date1 ??*?@param?date2
??*?@param?date2 ??*?@return
??*?@return ??*/
??*/ ?public?static?long?getDays(String?date1,?String?date2)?{
?public?static?long?getDays(String?date1,?String?date2)?{ ??if?(date1?==?null?||?date1.equals(""))
??if?(date1?==?null?||?date1.equals("")) ???return?0;
???return?0; ??if?(date2?==?null?||?date2.equals(""))
??if?(date2?==?null?||?date2.equals("")) ???return?0;
???return?0; ??//?转换为标准时间
??//?转换为标准时间 ??SimpleDateFormat?myFormatter?=?new?SimpleDateFormat("yyyy-MM-dd");
??SimpleDateFormat?myFormatter?=?new?SimpleDateFormat("yyyy-MM-dd"); ??java.util.Date?date?=?null;
??java.util.Date?date?=?null; ??java.util.Date?mydate?=?null;
??java.util.Date?mydate?=?null; ??try?{
??try?{ ???date?=?myFormatter.parse(date1);
???date?=?myFormatter.parse(date1); ???mydate?=?myFormatter.parse(date2);
???mydate?=?myFormatter.parse(date2); ??}?catch?(Exception?e)?{
??}?catch?(Exception?e)?{ ??}
??} ??long?day?=?(date.getTime()?-?mydate.getTime())?/?(24?*?60?*?60?*?1000);
??long?day?=?(date.getTime()?-?mydate.getTime())?/?(24?*?60?*?60?*?1000); ??return?day;
??return?day; ?}?
?}?
 ?/**
?/** ??*?形成如下的日历?,?根据传入的一个时间返回一个结构?星期日?星期一?星期二?星期三?星期四?星期五?星期六?下面是当月的各个时间
??*?形成如下的日历?,?根据传入的一个时间返回一个结构?星期日?星期一?星期二?星期三?星期四?星期五?星期六?下面是当月的各个时间 ??*?此函数返回该日历第一行星期日所在的日期
??*?此函数返回该日历第一行星期日所在的日期 ??*?
??*? ??*?@param?sdate
??*?@param?sdate ??*?@return
??*?@return ??*/
??*/ ?public?static?String?getNowMonth(String?sdate)?{
?public?static?String?getNowMonth(String?sdate)?{ ??//?取该时间所在月的一号
??//?取该时间所在月的一号 ??sdate?=?sdate.substring(0,?8)?+?"01";?
??sdate?=?sdate.substring(0,?8)?+?"01";?
 ??//?得到这个月的1号是星期几
??//?得到这个月的1号是星期几 ??Date?date?=?VeDate.strToDate(sdate);
??Date?date?=?VeDate.strToDate(sdate); ??Calendar?c?=?Calendar.getInstance();
??Calendar?c?=?Calendar.getInstance(); ??c.setTime(date);
??c.setTime(date); ??int?u?=?c.get(Calendar.DAY_OF_WEEK);
??int?u?=?c.get(Calendar.DAY_OF_WEEK); ??String?newday?=?VeDate.getNextDay(sdate,?(1?-?u)?+?"");
??String?newday?=?VeDate.getNextDay(sdate,?(1?-?u)?+?""); ??return?newday;
??return?newday; ?}?
?}?
 ?/**
?/** ??*?取得数据库主键?生成格式为yyyymmddhhmmss+k位随机数
??*?取得数据库主键?生成格式为yyyymmddhhmmss+k位随机数 ??*?
??*? ??*?@param?k
??*?@param?k ??*????????????表示是取几位随机数,可以自己定
??*????????????表示是取几位随机数,可以自己定 ??*/?
??*/?
 ?public?static?String?getNo(int?k)?{?
?public?static?String?getNo(int?k)?{?
 ??return?getUserDate("yyyyMMddhhmmss")?+?getRandom(k);
??return?getUserDate("yyyyMMddhhmmss")?+?getRandom(k); ?}?
?}?
 ?/**
?/** ??*?返回一个随机数
??*?返回一个随机数 ??*?
??*? ??*?@param?i
??*?@param?i ??*?@return
??*?@return ??*/
??*/ ?public?static?String?getRandom(int?i)?{
?public?static?String?getRandom(int?i)?{ ??Random?jjj?=?new?Random();
??Random?jjj?=?new?Random(); ??//?int?suiJiShu?=?jjj.nextInt(9);
??//?int?suiJiShu?=?jjj.nextInt(9); ??if?(i?==?0)
??if?(i?==?0) ???return?"";
???return?""; ??String?jj?=?"";
??String?jj?=?""; ??for?(int?k?=?0;?k?<?i;?k++)?{
??for?(int?k?=?0;?k?<?i;?k++)?{ ???jj?=?jj?+?jjj.nextInt(9);
???jj?=?jj?+?jjj.nextInt(9); ??}
??} ??return?jj;
??return?jj; ?}?
?}?
 ?/**
?/** ??*?
??*? ??*?@param?args
??*?@param?args ??*/
??*/ ?public?static?boolean?RightDate(String?date)?{?
?public?static?boolean?RightDate(String?date)?{?
 ??SimpleDateFormat?sdf?=?new?SimpleDateFormat("yyyy-MM-dd?hh:mm:ss");
??SimpleDateFormat?sdf?=?new?SimpleDateFormat("yyyy-MM-dd?hh:mm:ss"); ??;
??; ??if?(date?==?null)
??if?(date?==?null) ???return?false;
???return?false; ??if?(date.length()?>?10)?{
??if?(date.length()?>?10)?{ ???sdf?=?new?SimpleDateFormat("yyyy-MM-dd?hh:mm:ss");
???sdf?=?new?SimpleDateFormat("yyyy-MM-dd?hh:mm:ss"); ??}?else?{
??}?else?{ ???sdf?=?new?SimpleDateFormat("yyyy-MM-dd");
???sdf?=?new?SimpleDateFormat("yyyy-MM-dd"); ??}
??} ??try?{
??try?{ ???sdf.parse(date);
???sdf.parse(date); ??}?catch?(ParseException?pe)?{
??}?catch?(ParseException?pe)?{ ???return?false;
???return?false; ??}
??} ??return?true;
??return?true; ?}?
?}?
 ?/***************************************************************************
?/*************************************************************************** ??*?//nd=1表示返回的值中包含年度?//yf=1表示返回的值中包含月份?//rq=1表示返回的值中包含日期?//format表示返回的格式?1
??*?//nd=1表示返回的值中包含年度?//yf=1表示返回的值中包含月份?//rq=1表示返回的值中包含日期?//format表示返回的格式?1 ??*?以年月日中文返回?2?以横线-返回?//?3?以斜线/返回?4?以缩写不带其它符号形式返回?//?5?以点号.返回
??*?以年月日中文返回?2?以横线-返回?//?3?以斜线/返回?4?以缩写不带其它符号形式返回?//?5?以点号.返回 ??**************************************************************************/
??**************************************************************************/ ?public?static?String?getStringDateMonth(String?sdate,?String?nd,?String?yf,?String?rq,?String?format)?{
?public?static?String?getStringDateMonth(String?sdate,?String?nd,?String?yf,?String?rq,?String?format)?{ ??Date?currentTime?=?new?Date();
??Date?currentTime?=?new?Date(); ??SimpleDateFormat?formatter?=?new?SimpleDateFormat("yyyy-MM-dd");
??SimpleDateFormat?formatter?=?new?SimpleDateFormat("yyyy-MM-dd"); ??String?dateString?=?formatter.format(currentTime);
??String?dateString?=?formatter.format(currentTime); ??String?s_nd?=?dateString.substring(0,?4);?//?年份
??String?s_nd?=?dateString.substring(0,?4);?//?年份 ??String?s_yf?=?dateString.substring(5,?7);?//?月份
??String?s_yf?=?dateString.substring(5,?7);?//?月份 ??String?s_rq?=?dateString.substring(8,?10);?//?日期
??String?s_rq?=?dateString.substring(8,?10);?//?日期 ??String?sreturn?=?"";
??String?sreturn?=?""; ??roc.util.MyChar?mc?=?new?roc.util.MyChar();
??roc.util.MyChar?mc?=?new?roc.util.MyChar(); ??if?(sdate?==?null?||?sdate.equals("")?||?!mc.Isdate(sdate))?{?//?处理空值情况
??if?(sdate?==?null?||?sdate.equals("")?||?!mc.Isdate(sdate))?{?//?处理空值情况 ???if?(nd.equals("1"))?{
???if?(nd.equals("1"))?{ ????sreturn?=?s_nd;
????sreturn?=?s_nd; ????//?处理间隔符
????//?处理间隔符 ????if?(format.equals("1"))
????if?(format.equals("1")) ?????sreturn?=?sreturn?+?"年";
?????sreturn?=?sreturn?+?"年"; ????else?if?(format.equals("2"))
????else?if?(format.equals("2")) ?????sreturn?=?sreturn?+?"-";
?????sreturn?=?sreturn?+?"-"; ????else?if?(format.equals("3"))
????else?if?(format.equals("3")) ?????sreturn?=?sreturn?+?"/";
?????sreturn?=?sreturn?+?"/"; ????else?if?(format.equals("5"))
????else?if?(format.equals("5")) ?????sreturn?=?sreturn?+?".";
?????sreturn?=?sreturn?+?"."; ???}
???} ???//?处理月份
???//?处理月份 ???if?(yf.equals("1"))?{
???if?(yf.equals("1"))?{ ????sreturn?=?sreturn?+?s_yf;
????sreturn?=?sreturn?+?s_yf; ????if?(format.equals("1"))
????if?(format.equals("1")) ?????sreturn?=?sreturn?+?"月";
?????sreturn?=?sreturn?+?"月"; ????else?if?(format.equals("2"))
????else?if?(format.equals("2")) ?????sreturn?=?sreturn?+?"-";
?????sreturn?=?sreturn?+?"-"; ????else?if?(format.equals("3"))
????else?if?(format.equals("3")) ?????sreturn?=?sreturn?+?"/";
?????sreturn?=?sreturn?+?"/"; ????else?if?(format.equals("5"))
????else?if?(format.equals("5")) ?????sreturn?=?sreturn?+?".";
?????sreturn?=?sreturn?+?"."; ???}
???} ???//?处理日期
???//?处理日期 ???if?(rq.equals("1"))?{
???if?(rq.equals("1"))?{ ????sreturn?=?sreturn?+?s_rq;
????sreturn?=?sreturn?+?s_rq; ????if?(format.equals("1"))
????if?(format.equals("1")) ?????sreturn?=?sreturn?+?"日";
?????sreturn?=?sreturn?+?"日"; ???}
???} ??}?else?{
??}?else?{ ???//?不是空值,也是一个合法的日期值,则先将其转换为标准的时间格式
???//?不是空值,也是一个合法的日期值,则先将其转换为标准的时间格式 ???sdate?=?roc.util.RocDate.getOKDate(sdate);
???sdate?=?roc.util.RocDate.getOKDate(sdate); ???s_nd?=?sdate.substring(0,?4);?//?年份
???s_nd?=?sdate.substring(0,?4);?//?年份 ???s_yf?=?sdate.substring(5,?7);?//?月份
???s_yf?=?sdate.substring(5,?7);?//?月份 ???s_rq?=?sdate.substring(8,?10);?//?日期
???s_rq?=?sdate.substring(8,?10);?//?日期 ???if?(nd.equals("1"))?{
???if?(nd.equals("1"))?{ ????sreturn?=?s_nd;
????sreturn?=?s_nd; ????//?处理间隔符
????//?处理间隔符 ????if?(format.equals("1"))
????if?(format.equals("1")) ?????sreturn?=?sreturn?+?"年";
?????sreturn?=?sreturn?+?"年"; ????else?if?(format.equals("2"))
????else?if?(format.equals("2")) ?????sreturn?=?sreturn?+?"-";
?????sreturn?=?sreturn?+?"-"; ????else?if?(format.equals("3"))
????else?if?(format.equals("3")) ?????sreturn?=?sreturn?+?"/";
?????sreturn?=?sreturn?+?"/"; ????else?if?(format.equals("5"))
????else?if?(format.equals("5")) ?????sreturn?=?sreturn?+?".";
?????sreturn?=?sreturn?+?"."; ???}
???} ???//?处理月份
???//?处理月份 ???if?(yf.equals("1"))?{
???if?(yf.equals("1"))?{ ????sreturn?=?sreturn?+?s_yf;
????sreturn?=?sreturn?+?s_yf; ????if?(format.equals("1"))
????if?(format.equals("1")) ?????sreturn?=?sreturn?+?"月";
?????sreturn?=?sreturn?+?"月"; ????else?if?(format.equals("2"))
????else?if?(format.equals("2")) ?????sreturn?=?sreturn?+?"-";
?????sreturn?=?sreturn?+?"-"; ????else?if?(format.equals("3"))
????else?if?(format.equals("3")) ?????sreturn?=?sreturn?+?"/";
?????sreturn?=?sreturn?+?"/"; ????else?if?(format.equals("5"))
????else?if?(format.equals("5")) ?????sreturn?=?sreturn?+?".";
?????sreturn?=?sreturn?+?"."; ???}
???} ???//?处理日期
???//?处理日期 ???if?(rq.equals("1"))?{
???if?(rq.equals("1"))?{ ????sreturn?=?sreturn?+?s_rq;
????sreturn?=?sreturn?+?s_rq; ????if?(format.equals("1"))
????if?(format.equals("1")) ?????sreturn?=?sreturn?+?"日";
?????sreturn?=?sreturn?+?"日"; ???}
???} ??}
??} ??return?sreturn;
??return?sreturn; ?}?
?}?
 ?public?static?String?getNextMonthDay(String?sdate,?int?m)?{
?public?static?String?getNextMonthDay(String?sdate,?int?m)?{ ??sdate?=?getOKDate(sdate);
??sdate?=?getOKDate(sdate); ??int?year?=?Integer.parseInt(sdate.substring(0,?4));
??int?year?=?Integer.parseInt(sdate.substring(0,?4)); ??int?month?=?Integer.parseInt(sdate.substring(5,?7));
??int?month?=?Integer.parseInt(sdate.substring(5,?7)); ??month?=?month?+?m;
??month?=?month?+?m; ??if?(month?<?0)?{
??if?(month?<?0)?{ ???month?=?month?+?12;
???month?=?month?+?12; ???year?=?year?-?1;
???year?=?year?-?1; ??}?else?if?(month?>?12)?{
??}?else?if?(month?>?12)?{ ???month?=?month?-?12;
???month?=?month?-?12; ???year?=?year?+?1;
???year?=?year?+?1; ??}
??} ??String?smonth?=?"";
??String?smonth?=?""; ??if?(month?<?10)
??if?(month?<?10) ???smonth?=?"0"?+?month;
???smonth?=?"0"?+?month; ??else
??else ???smonth?=?""?+?month;
???smonth?=?""?+?month; ??return?year?+?"-"?+?smonth?+?"-10";
??return?year?+?"-"?+?smonth?+?"-10"; ?}?
?}?
 ?public?static?String?getOKDate(String?sdate)?{
?public?static?String?getOKDate(String?sdate)?{ ??if?(sdate?==?null?||?sdate.equals(""))
??if?(sdate?==?null?||?sdate.equals("")) ???return?getStringDateShort();?
???return?getStringDateShort();?
 ??if?(!VeStr.Isdate(sdate))?{
??if?(!VeStr.Isdate(sdate))?{ ???sdate?=?getStringDateShort();
???sdate?=?getStringDateShort(); ??}
??} ??//?将“/”转换为“-”
??//?将“/”转换为“-” ??sdate?=?VeStr.Replace(sdate,?"/",?"-");
??sdate?=?VeStr.Replace(sdate,?"/",?"-"); ??//?如果只有8位长度,则要进行转换
??//?如果只有8位长度,则要进行转换 ??if?(sdate.length()?==?8)
??if?(sdate.length()?==?8) ???sdate?=?sdate.substring(0,?4)?+?"-"?+?sdate.substring(4,?6)?+?"-"?+?sdate.substring(6,?8);
???sdate?=?sdate.substring(0,?4)?+?"-"?+?sdate.substring(4,?6)?+?"-"?+?sdate.substring(6,?8); ??SimpleDateFormat?formatter?=?new?SimpleDateFormat("yyyy-MM-dd");
??SimpleDateFormat?formatter?=?new?SimpleDateFormat("yyyy-MM-dd"); ??ParsePosition?pos?=?new?ParsePosition(0);
??ParsePosition?pos?=?new?ParsePosition(0); ??Date?strtodate?=?formatter.parse(sdate,?pos);
??Date?strtodate?=?formatter.parse(sdate,?pos); ??String?dateString?=?formatter.format(strtodate);
??String?dateString?=?formatter.format(strtodate); ??return?dateString;
??return?dateString; ?}?
?}?
 ?public?static?void?main(String[]?args)?throws?Exception?{
?public?static?void?main(String[]?args)?throws?Exception?{ ??try?{
??try?{ ???//System.out.print(Integer.valueOf(getTwoDay("2006-11-03?12:22:10",?"2006-11-02?11:22:09")));
???//System.out.print(Integer.valueOf(getTwoDay("2006-11-03?12:22:10",?"2006-11-02?11:22:09"))); ??}?catch?(Exception?e)?{
??}?catch?(Exception?e)?{ ???throw?new?Exception();
???throw?new?Exception(); ??}
??} ??//System.out.println("sss");
??//System.out.println("sss"); ?}
?} }
}
 相关文章
                            相关文章