java 日期 几天后_java 日期 格式 前多少天, 后多少天的獲取方法,日期工具類 星期...

import java.util.Date;

import java.sql.Timestamp;

import java.text.SimpleDateFormat;

import java.util.Calendar;

public class DateUtils {

public static DateUtils dateUtils = new DateUtils();

public static DateUtils getInstance() {

return dateUtils;

}

/**

* 獲取比當前日期早多少天或者晚多少天的日期 例如 前五天 -5    后五天   5

* @param days

* @param format 返回日期的格式

* @return 格式化好的字符串

*/

public static String DateBefAft(int days,String format){

//

if(format==null || "".equals(format))

format="yyyy-MM-dd";

Calendar now = Calendar.getInstance();

SimpleDateFormat formatter = new SimpleDateFormat(format);

now.add(Calendar.DAY_OF_YEAR,-days);

return formatter.format(now.getTime());

}

/**

* 格式化 Date 類型的日期

* @param date 傳入日期

* @param format 設定日期的顯示格式 默認 2006-12-25

* @return 格式化后的日期

*/

public static String DatetoString(Date date,String format){

if(format==null || "".equals(format))

format="yyyy-MM-dd";

SimpleDateFormat formatter = new SimpleDateFormat(format);

return formatter.format(date);

}

/**

* 格式化 Timestamp 類型的日期

* @param timestamp 傳入日期

* @param format 設定日期的顯示格式 默認 2006-12-25

* @return 格式化后的日期

*/

public static String TimestamptoString(Timestamp timestamp,String format){

if(format==null || "".equals(format))

format="yyyy-MM-dd";

SimpleDateFormat formatter = new SimpleDateFormat(format);

return formatter.format(timestamp);

}

/**

* 這個方法用來獲取當前的時間,非靜態方法

* @param format 參數說明 format=""時 返回當前日期時間如2007-03-14 13:55:24   傳入8則顯示8位日期格式,傳入10則顯示10位日期格式,傳入0則無格式,month則返回月份,year則顯示年份,day顯示幾號,time返回時間,cntime中文完整日期,montime陰歷,jq節氣

* @return

*/

public String getNowtime(String format) {//傳入8則顯示8位日期格式,傳入10則顯示10位日期格式,傳入0則無格式,month則返回月份,year則顯示年份,day顯示幾號,time返回時間,cntime中文完整日期,montime陰歷,jq節氣

//  獲取當前的時間

Calendar now = Calendar.getInstance();

int iMonth = now.get(Calendar.MONTH) + 1 ;

String month = iMonth + "";

month=month.length()==1?"0"+month:month;

String year = now.get(Calendar.YEAR) + "";

String day = now.get(Calendar.DATE) + "";

day=day.length()==1?"0"+day:day;

String hour = now.get(Calendar.HOUR_OF_DAY) + "";

hour=hour.length()==1?"0"+hour:hour;

String minute = now.get(Calendar.MINUTE) + "";

minute=minute.length()==1?"0"+minute:minute;

String second = now.get(Calendar.SECOND) + "";

second=second.length()==1?"0"+second:second;

if ( "month".equals(format )) return month;

else

if ( "year".equals(format )) return year;

else

if ( "day".equals(format )) return day;

else

if ( "time".equals(format )) return hour +":" + minute +":" + second;

else if ( "cntime".equals(format )) {

String cntime = year + "年" + month + "月" + day + "日";

return cntime;

}

else if ( "montime".equals(format )) {

return MonTime.newInstance().getMonTime();

}

else if ( "jq".equals(format )) {

return ChineseCalendarGB.getInstance().getJQ();

}

else if ( "week".equals(format )) {

int week = now.get(Calendar.DAY_OF_WEEK);

switch (week) {

case 1:

return "日";

case 2:

return "一";

case 3:

return "二";

case 4:

return "三";

case 5:

return "四";

case 6:

return "五";

case 7:

return "六";

}

return "";

}

else if ( "8".equals( format ))

return year + month + day;

else if ("10".equals ( format ))

return year+"-" + month +"-" + day;

else return year+"-" + month +"-" + day + " "+ hour +":" + minute +":" + second;

}

public static void main(String[] args) {

// TODO 自動生成方法存根

System.out.println(DateBefAft(0,"yyyyMMdd"));

Date dat=new Date();

System.out.println(DatetoString(dat,"yyyyMMdd"));

Timestamp timestamp=new Timestamp(106,05,06,1,1,1,1);

System.out.println(DatetoString(timestamp,"yyyyMMdd"));

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值