java日期获取及转换.docx

上传人:b****8 文档编号:30650954 上传时间:2023-08-18 格式:DOCX 页数:20 大小:17.93KB
下载 相关 举报
java日期获取及转换.docx_第1页
第1页 / 共20页
java日期获取及转换.docx_第2页
第2页 / 共20页
java日期获取及转换.docx_第3页
第3页 / 共20页
java日期获取及转换.docx_第4页
第4页 / 共20页
java日期获取及转换.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

java日期获取及转换.docx

《java日期获取及转换.docx》由会员分享,可在线阅读,更多相关《java日期获取及转换.docx(20页珍藏版)》请在冰豆网上搜索。

java日期获取及转换.docx

java日期获取及转换

packagecom.sevnce.util.date;

importjava.sql.Timestamp;

importjava.text.ParseException;

importjava.text.SimpleDateFormat;

importjava.util.Calendar;

importjava.util.Date;

importjava.util.GregorianCalendar;

/**

*时间操作器

*

*@authorAlien

*

*/

@SuppressWarnings("static-access")

publicclassTimeFormator{

//dat格式为:

"1900-02-2112:

23:

33";

publicstaticDatefromStrToDate(Stringdat){

SimpleDateFormatdateformat=newSimpleDateFormat(

"yyyy-MM-ddHH:

mm:

ss");

Datedate=null;

try{

date=dateformat.parse(dat);

}catch(ParseExceptione){

e.printStackTrace();

}

returndate;

}

/**

*获取农历

*

*@return

*/

publicStringgetChinesDate(){

returnnewChineseDate().getChineseDateString();

}

/**

*获取农历

*

*@return

*/

publicstaticStringgetChinesDate(Stringtime){

returnnewChineseDate(strToDate(time)).getChineseDateString();

}

publicstaticintgetHour(){

Calendarc=Calendar.getInstance();

returnc.get(Calendar.HOUR_OF_DAY);

}

/**

*获取今天时间格式YY-MM-DD

*

*@return

*/

publicstaticStringgetToday(){

Stringstr="";

SimpleDateFormatdateformat=newSimpleDateFormat("yyyy-MM-dd");

str=dateformat.format(newDate());

returnstr;

}

/**

*获取现在时间格式:

yy-mm-ddHH:

mm:

ss

*

*@return

*/

publicstaticStringgetNow(){

Stringstr="";

Calendarc=Calendar.getInstance();

SimpleDateFormatdateformat=newSimpleDateFormat(

"yyyy-MM-ddHH:

mm:

ss");

str=dateformat.format(c.getTime());

returnstr;

}

/**

*获取现在时间格式:

yy-mm-ddHH:

mm:

ss

*

*@returnTIMESTAMP

*/

publicstaticTimestampgetNowTimestamp(){

Stringstr="";

SimpleDateFormatdateformat=newSimpleDateFormat(

"yyyy-MM-ddHH:

mm:

ss");

str=dateformat.format(newDate());

returnfromStringToTimestamp(str);

}

/**

*获取现在的时间格式:

xxxx年xx月xx日xx:

xx:

ss

*

*@return

*/

publicstaticStringgetNowWithChin(){

Datenow=newDate();

SimpleDateFormatdateformat=newSimpleDateFormat(

"yyyy年MM月dd日HH:

mm:

ss");

Stringstr6=dateformat.format(now);

returnstr6;

}

publicstaticStringgetTodayWithChin(){

Datenow=newDate();

SimpleDateFormatdateformat=newSimpleDateFormat("yyyy年MM月dd日");

Stringstr=dateformat.format(now);

//Calendarc=Calendar.getInstance();

//inty=c.get(Calendar.YEAR);

//intm=c.get(Calendar.MONTH)+1;

//intd=c.get(Calendar.DATE);

//Stringmon,day="";

//if(m<10){mon="0"+m;}else{mon=String.valueOf(m);}

//if(d<10){

//day="0"+d;

//}else{day=String.valueOf(d);}

//Stringstr=""+y+"年"+mon+"月"+day+"日";

returnstr;

}

/**

*String转化为timestamp

*

*@paramtime

*@return

*/

publicstaticTimestampfromStringToTimestamp(Stringtime){

Timestampts=Timestamp.valueOf(time);

returnts;

}

/**

*获取间隔今天N天的日期负数为过去

*

*@paramn

*@return

*/

publicstaticStringgetTheDay(intn){

SimpleDateFormatmyFormatter=newSimpleDateFormat("yyyy-MM-dd");

longday=0;

longtemp=0;

Stringdays="";

try{

Datedate=newDate();

day=date.getTime();

temp=24*60*60*1000*(n);

days=myFormatter.format(day+temp);

}catch(Exceptione){

return"";

}

returndays;

}

/**

*获取间隔今天N天的日期负数为过去

*

*@paramn

*@returnYYYY-MM-DDHH:

mm:

ss

*/

publicStringgetTheDayFromADay(intn,Stringtime){

Stringtimes="";

Stringtemp=this.getTheDate(n);

temp=temp+"23:

59:

59";

returntimes;

}

/**

*得到二个日期间的间隔天数

*/

publicstaticStringgetTwoDay(Stringsj1,Stringsj2){

SimpleDateFormatmyFormatter=newSimpleDateFormat("yyyy-MM-dd");

longday=0;

try{

java.util.Datedate=myFormatter.parse(sj1);

java.util.Datemydate=myFormatter.parse(sj2);

day=(date.getTime()-mydate.getTime())/(24*60*60*1000);

}catch(Exceptione){

return"";

}

returnday+"";

}

//获取当天时间

publicStringgetNowTime(Stringdateformat){

Datenow=newDate();

SimpleDateFormatdateFormat=newSimpleDateFormat(dateformat);//可以方便地修改日期格式

Stringhehe=dateFormat.format(now);

returnhehe;

}

/**

*获取上一月月

*

*@return

*/

publicstaticStringgetTheDateForMonth(){

Calendarcd=Calendar.getInstance();

intday=cd.get(Calendar.DATE);

intmonth=cd.get(Calendar.MONTH);

intyear=cd.get(Calendar.YEAR);

returnyear+"-"+month+"-"+day;

}

//获得当前日期与本周日相差的天数

privatestaticintgetMondayPlus(){

Calendarcd=Calendar.getInstance();

//获得今天是一周的第几天,星期日是第一天,星期二是第二天......

intdayOfWeek=cd.get(Calendar.DAY_OF_WEEK)-1;//因为按中国礼拜一作为第一天所以这里减1

if(dayOfWeek==1){

return0;

}else{

return1-dayOfWeek;

}

}

//获得下个月最后一天的日期

publicStringgetNextMonthEnd(){

Stringstr="";

SimpleDateFormatsdf=newSimpleDateFormat("yyyy-MM-dd");

CalendarlastDate=Calendar.getInstance();

lastDate.add(Calendar.MONTH,1);//加一个月

lastDate.set(Calendar.DATE,1);//把日期设置为当月第一天

lastDate.roll(Calendar.DATE,-1);//日期回滚一天,也就是本月最后一天

str=sdf.format(lastDate.getTime());

returnstr;

}

/**

*获取长时间计算返回和今天相差多少天的日期

*

*@paramtime

*@paramn

*@returnyyyy-mm-dd

*/

publicStringgetTheDate(intn){

Stringstr="";

SimpleDateFormatsdf=newSimpleDateFormat("yyyy-MM-dd");

Calendardate=Calendar.getInstance();

date.roll(date.DATE,n);

str=sdf.format(date.getTime());

returnstr;

}

/**

*当前时间加上hourtype:

1为精确到分钟2:

精确到秒

*

*@return结果时间

*/

publicstaticStringgetTimeBYhour(Integerhour,inttype){

if(hour==null){

returnnull;

}

SimpleDateFormatsdf=null;

Datedate1=newDate();

if(type==1){

sdf=newSimpleDateFormat("yyyy-MM-ddHH:

mm");

}elseif(type==2){

sdf=newSimpleDateFormat("yyyy-MM-ddHH:

mm:

ss");

}

longTime=(date1.getTime()/1000)+60*60*hour;

Datedate2=newDate(Time*1000);

returnsdf.format(date2);

}

/**

*返回和今天相差月数日期

*

*@paramn

*@return

*/

publicStringgetTheMonthDay(intn){

Stringstr="";

SimpleDateFormatsdf=newSimpleDateFormat("yyyy-MM-dd");

Calendardate=Calendar.getInstance();

Datenow=date.getTime();

longnow1=now.getTime();

intk=(n/12)+1;

date.roll(date.MONTH,n);

if(n>0&&(date.getTime().getTime()

date.roll(date.YEAR,k);

str=sdf.format(date.getTime());

returnstr;

}

/**

*比较时间是否大于今天

*

*@paramtime

*yyyy-MM-dd

*@return

*/

publicstaticbooleanTimeCompareToday(Stringtime){

SimpleDateFormatdateformat=newSimpleDateFormat("yyyy-MM-dd");

Calendarc1=Calendar.getInstance();

Calendarc2=Calendar.getInstance();

try{

c2.setTime(dateformat.parse(time));

}catch(ParseExceptione){

e.printStackTrace();

}

if(c2.after(c1)){

returntrue;

}else

returnfalse;

}

/**

*比较时间是否大于今天

*

*@paramtime

*yyyy-MM-dd

*@return

*/

publicstaticintTimeCompareTodays(Stringtime){

SimpleDateFormatdateformat=newSimpleDateFormat("yyyy-MM-dd");

Calendarc1=Calendar.getInstance();

Calendarc2=Calendar.getInstance();

try{

c2.setTime(dateformat.parse(time));

c1.setTime(dateformat.parse(TimeFormator.getToday()));

}catch(ParseExceptione){

e.printStackTrace();

}

if(c2.equals(c1)){

return1;

}else

return0;

}

/**

*获取两个日期之间的差距

*

*@params

*开始时间

*@parame

*结束时间

*@paramformat

*格式

*@return天

*/

publicstaticintgetDaysBetween(Strings,Stringe,Stringformat){

SimpleDateFormatdateformat=newSimpleDateFormat(format);

Calendarc1=Calendar.getInstance();

Calendarc2=Calendar.getInstance();

try{

c2.setTime(dateformat.parse(s));

c1.setTime(dateformat.parse(e));

doublemm=(c1.getTimeInMillis()-c2.getTimeInMillis())/24/3600/1000;

intk=(int)mm;

returnk;

}catch(ParseExceptionee){

ee.printStackTrace();

}

return0;

}

//------------------------------------------------------------------------------------------------------------------

publicstaticvoidmain(String[]args){

TimeFormatort=newTimeFormator();

intis=newTimeFormator().TimeCompareTodays("2011-05-26");

if(is==1){

t.getTheDate(-10);

System.out.println("等于了今天");

}else{

System.out.println("不等于了今天");

}

}

/**

*获取本月天数

*

*@return

*/

publicstaticintgetNowMonthDays(){

Calendarcal=Calendar.getInstance();

intyear=cal.get(Calendar.YEAR);

intmonth=cal.get(Calendar.MONTH)+1;

returngetDaysInTheMonth(year,month);

}

/**

*获取当前号数

*

*@return

*/

publicstaticintgetTheDateToday(){

Calendarcal=Calendar.getInstance();

returncal.get(Calendar.DATE);

}

/**

*获取当前月

*

*@return

*/

publicstaticintgetTheMonthToday(){

Calendarcal=Calendar.getInstance();

returncal.get(Calendar.MONTH)+1;

}

/**

*获取当前周一的日期

*

*@return

*/

publicstaticStringgetWeekday(){

intmondayPlus=getMondayPlus();

GregorianCalendarcurrentDate=newGregorianCalendar();

currentDate.add(GregorianCalendar.DATE,mondayPlus);

Datemonday=currentDate.getTime();

SimpleDateFormatdf=newSimpleDateFormat("yyyy-MM-dd");

StringpreMonday=df.format(monday);

returnpreMonday;

}

/**

*获取当前周一的号数

*

*@return

*/

publicstaticintgetMondayInMonth(){

Stringk=getWeekday();

Stringt=k.substring(8);

intm=Integer.parseInt(t);

returnm;

}

/**

*根据一个日期,返回是星期几的字符串

*

*@paramsdate

*@return

*/

publicstaticStringgetWeek(Stringsdate){

Calendarc=Calendar.getInstance();

c.setTime(strToDate(sdate));

returnnewSimpleDateFormat("EEEE").format(c.getTime());

}

/**

*将短

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 解决方案

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1