java date 操作类_java时间操作类

packagexidian.sl.util;importjava.text.ParseException;importjava.text.SimpleDateFormat;importjava.util.Calendar;importjava.util.Date;/*** 日期格式化工具类

*@authorsl 2011-11-17

**/

public classFormatDate {/*** 得到当前系统日期,格式:yyyy-mm-dd

*

*@return

*/

public staticString getCurrentDate(){return getFormatDate("yyyy-MM-dd");

}/*** 返回年份

*@return

*/

public staticString getCurrentYear(){return getFormatDate("yyyy");

}/*** 返回月份*/

public staticString getCurrentMonth(){return getFormatDate("MM");

}/*** 返回特定格式的日期

* 格式如下:

* yyyy-mm-dd

*@paramformatString

*@return

*/

protected staticString getFormatDate(String formatString){

String currentDate="";

SimpleDateFormat format1= newSimpleDateFormat(formatString);

currentDate= format1.format(newDate());returncurrentDate;

}/*** 返回时间格式样式

*@return

*/

public staticString getFormateDateAll(){return getFormatDate("yyyy-MM-dd HH:mm:ss");

}/*** 获取简化时间格式

*@return

*/

public staticString getFormateDateSimple(){return getFormatDate("yyyyMMddHHmmss");

}/*** 获取几天后的时间

*@paramd

*@paramday

*@return

*/

public static Date getDateAfterDay(Date d, intday) {

Calendar now=Calendar.getInstance();

now.setTime(d);

now.set(Calendar.DATE, now.get(Calendar.DATE)+day);returnnow.getTime();

}/*** 返回几个小时后的时间

*@paramd

*@paramhour

*@return

*/

public static Date getDateAfterHour(Date d,inthour){

Calendar now=Calendar.getInstance();

now.setTime(d);

now.set(Calendar.HOUR, now.get(Calendar.HOUR)+hour);returnnow.getTime();

}/*** 返回几分钟后的某个时间

*@paramd

*@paramminutes

*@return

*/

public static Date getDateAfterMinute(Date d,intminutes){

Calendar now=Calendar.getInstance();

now.setTime(d);

now.set(Calendar.MINUTE, now.get(Calendar.MINUTE)+minutes);returnnow.getTime();

}/*** 比较两个日期的大小

* true date1比date2前

* false date1比date2后

*@paramdate1

*@paramdate2

*@return

*/

public static booleandateCompare(Date date1,Date date2){boolean dateComPareFlag = true;if (date2.compareTo(date1) != 1) {

dateComPareFlag= false;

}returndateComPareFlag;

}/*** 返回两时间之差

*@paramstartTime

*@paramendTime

*@return

*/

public static longdateMinus(Date startTime,Date endTime){return endTime.getTime()-startTime.getTime();

}//计算两个string类的时间差

public static String time(String startTime, String endTime) throwsParseException{

SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//格式化时间

Date outdate =sdf.parse(endTime);

Date indate=sdf.parse(startTime);long totalhours = (outdate.getTime()-indate.getTime())/(1000*60*60);//时

long totalminutes = (outdate.getTime()-indate.getTime())/(1000*60)-totalhours*60;//分

long totalseconds = (outdate.getTime()-indate.getTime())/(1000)-totalminutes*60;//秒

String total_time = totalhours+"时"+totalminutes+"分"+totalseconds+"秒";returntotal_time;

}//计算考试的剩余时间

public static String examRemainTime(String startTime, String endTime) throwsParseException{

SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//格式化时间

Date outdate =sdf.parse(endTime);

Date indate=sdf.parse(startTime);long totalminutes = (outdate.getTime()-indate.getTime())/(1000*60);//分

long totalseconds = (outdate.getTime()-indate.getTime())/(1000)-totalminutes*60;//秒

String remainTime = totalminutes+ "#"+totalseconds;returnremainTime;

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值