一个自己写得日期工具

	public static String DATE_FMT = "yyyy-MM-dd";
	public static String TIME_FMT = "yyyy-MM-dd HH:mm:ss";
	public static String SIMPLE_TIME_FMT = "yyyyMMddHHmmss";

	public SimpleDateFormat dfForm = null;

	/**
	 * 格式化日期
	 * 
	 * @param sDate
	 * @param sFmtFrom
	 * @param sFmtTo
	 * @return
	 * @throws ParseException
	 */
	public static String formatDate(String sDate, String sFmtFrom, String sFmtTo)
			throws ParseException {

		SimpleDateFormat sdfFrom = new SimpleDateFormat(sFmtFrom);

		SimpleDateFormat sdfTo = new SimpleDateFormat(sFmtTo);

		return sdfTo.format(sdfFrom.parse(sDate));
	}

	/**
	 * 格式化日期
	 * 
	 * @param dt
	 * @param sFmt
	 * @return
	 */
	public static String formatDate(Date dt, String sFmt) {

		if (dt == null || sFmt == null)

			return "";

		SimpleDateFormat sdfFrom = new SimpleDateFormat(sFmt);

		return sdfFrom.format(dt).toString();

	}
	/**
	 * 格式化日期,yyyy-MM-dd
	 * 
	 * @param dt
	 * @return
	 */
	public static String formatDate(Date dt) {

		return formatDate(dt, DATE_FMT);
	}
	/**
	 * 格式化日期,yyyy-MM-dd HH:mm:ss
	 * 
	 * @param dt
	 * @return
	 */
	public static String formatDateTime(Date dt) {

		return formatDate(dt, TIME_FMT);
	}
	/**
	 * 格式化日期,yyyyMMddHHmmss
	 * 
	 * @param dt
	 * @return
	 */
	public static String formatSimpleDate(Date dt) {

		return formatDate(dt, SIMPLE_TIME_FMT);
	}
	/**
	 * 得到当前时间,yyyyMMddHHmmss
	 * 
	 * @param args
	 */
	public static String getCurrentSimpleTime() {
		Date dt = new Date();
		return formatDate(dt, SIMPLE_TIME_FMT);
	}
	/**
	 * 得到当前时间,yyyy-MM-dd HH:mm:ss
	 * 
	 * @param args
	 */
	public static String getCurrentDateTime() {
		Date dt = new Date();
		return formatDate(dt, TIME_FMT);
	}
	/**
	 * 得到当前时间,yyyy-MM-dd
	 * 
	 * @param args
	 */
	public static String getCurrentDate() {
		Date dt = new Date();
		return formatDate(dt, DATE_FMT);
	}
	/**
	 * 得到当前时间
	 * 
	 * @return
	 */
	public static Timestamp getNowTimestamp() {
		return Timestamp.valueOf(new SimpleDateFormat(TIME_FMT).format(new Date()));
	}
	/**
	 * 转换日期格式
	 * @param date
	 * @return
	 */
	public static Timestamp conver2Timestamp(String date){
		return Timestamp.valueOf(date);
	}
	/**
	 * 
	 * 方法描述:返回Date型日期,yyyy-MM-dd HH:mm:ss
	 * @author ming.li
	 * @time 2011-4-28 下午01:15:32
	 *
	 * @param dateStr
	 * @return
	 * @throws ParseException
	 */
	public static Date string2Date(String dateStr) throws ParseException{
		SimpleDateFormat sdf=new SimpleDateFormat(TIME_FMT);
		return sdf.parse(dateStr);
	}
	/**
	 * 
	 * 方法描述:获取近半年时间,yyyyMM
	 * @author ming.li
	 * @time 2011-4-28 下午01:15:35
	 *
	 * @return
	 */
	public static String[] getNearHalfYear(){
		String[] halfYear=new String[6];
		String today = getCurrentDate();
		String yearTemp=today.substring(0, 4);
		String monthTemp=today.substring(5, 7);
		int year = Integer.parseInt(yearTemp);
		int month = Integer.parseInt(monthTemp)+1;
		if(month>6){
			for(int i=0;i<6;i++){
				month--;
				halfYear[i]=yearTemp+month;
			}
		}else{
			switch(month){
				case 6:{
					halfYear[0]=yearTemp+"05";
					halfYear[1]=yearTemp+"04";
					halfYear[2]=yearTemp+"03";
					halfYear[3]=yearTemp+"02";
					halfYear[4]=yearTemp+"01";
					halfYear[5]=(year-1)+"12";
					break;
				}
				case 5:{
					halfYear[0]=yearTemp+"04";
					halfYear[1]=yearTemp+"03";
					halfYear[2]=yearTemp+"02";
					halfYear[3]=yearTemp+"01";
					halfYear[4]=(year-1)+"12";
					halfYear[5]=(year-1)+"11";
					break;
				}
				case 4:{
					halfYear[0]=yearTemp+"03";
					halfYear[1]=yearTemp+"02";
					halfYear[2]=yearTemp+"01";
					halfYear[3]=(year-1)+"12";
					halfYear[4]=(year-1)+"11";
					halfYear[5]=(year-1)+"10";
					break;
				}
				case 3:{
					halfYear[0]=yearTemp+"02";
					halfYear[1]=yearTemp+"01";
					halfYear[2]=(year-1)+"12";
					halfYear[3]=(year-1)+"11";
					halfYear[4]=(year-1)+"10";
					halfYear[5]=(year-1)+"09";
					break;
				}
				case 2:{
					halfYear[0]=yearTemp+"01";
					halfYear[1]=(year-1)+"12";
					halfYear[2]=(year-1)+"11";
					halfYear[3]=(year-1)+"10";
					halfYear[4]=(year-1)+"09";
					halfYear[5]=(year-1)+"08";
					break;
				}
				case 1:{
					halfYear[0]=(year-1)+"12";
					halfYear[1]=(year-1)+"11";
					halfYear[2]=(year-1)+"10";
					halfYear[3]=(year-1)+"09";
					halfYear[4]=(year-1)+"08";
					halfYear[5]=(year-1)+"07";
					break;
				}
			}
		}
		
		return halfYear;
	}

 

以下是一个简单的Java日期工具类,包含常用的日期操作方法: ``` import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; public class DateUtil { // 格式化日期 public static String formatDate(Date date, String pattern) { DateFormat dateFormat = new SimpleDateFormat(pattern); return dateFormat.format(date); } // 获取当前日期 public static Date getCurrentDate() { Calendar calendar = Calendar.getInstance(); return calendar.getTime(); } // 获取当前日期字符串 public static String getCurrentDateString(String pattern) { Date currentDate = getCurrentDate(); return formatDate(currentDate, pattern); } // 获取给定日期的年份 public static int getYear(Date date) { Calendar calendar = Calendar.getInstance(); calendar.setTime(date); return calendar.get(Calendar.YEAR); } // 获取给定日期的月份 public static int getMonth(Date date) { Calendar calendar = Calendar.getInstance(); calendar.setTime(date); return calendar.get(Calendar.MONTH) + 1; } // 获取给定日期的天数 public static int getDay(Date date) { Calendar calendar = Calendar.getInstance(); calendar.setTime(date); return calendar.get(Calendar.DAY_OF_MONTH); } // 获取给定日期的小时数 public static int getHour(Date date) { Calendar calendar = Calendar.getInstance(); calendar.setTime(date); return calendar.get(Calendar.HOUR_OF_DAY); } // 获取给定日期的分钟数 public static int getMinute(Date date) { Calendar calendar = Calendar.getInstance(); calendar.setTime(date); return calendar.get(Calendar.MINUTE); } // 获取给定日期的秒数 public static int getSecond(Date date) { Calendar calendar = Calendar.getInstance(); calendar.setTime(date); return calendar.get(Calendar.SECOND); } // 获取给定日期的毫秒数 public static long getMillis(Date date) { Calendar calendar = Calendar.getInstance(); calendar.setTime(date); return calendar.getTimeInMillis(); } // 获取给定日期是一周中的第几天 public static int getDayOfWeek(Date date) { Calendar calendar = Calendar.getInstance(); calendar.setTime(date); return calendar.get(Calendar.DAY_OF_WEEK); } // 获取给定日期是一年中的第几天 public static int getDayOfYear(Date date) { Calendar calendar = Calendar.getInstance(); calendar.setTime(date); return calendar.get(Calendar.DAY_OF_YEAR); } // 获取给定日期所在月份的天数 public static int getDaysOfMonth(Date date) { Calendar calendar = Calendar.getInstance(); calendar.setTime(date); return calendar.getActualMaximum(Calendar.DAY_OF_MONTH); } // 在给定日期的基础上加上/减去指定的年数 public static Date addYears(Date date, int years) { Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.YEAR, years); return calendar.getTime(); } // 在给定日期的基础上加上/减去指定的月数 public static Date addMonths(Date date, int months) { Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.MONTH, months); return calendar.getTime(); } // 在给定日期的基础上加上/减去指定的天数 public static Date addDays(Date date, int days) { Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.DAY_OF_MONTH, days); return calendar.getTime(); } // 在给定日期的基础上加上/减去指定的小时数 public static Date addHours(Date date, int hours) { Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.HOUR_OF_DAY, hours); return calendar.getTime(); } // 在给定日期的基础上加上/减去指定的分钟数 public static Date addMinutes(Date date, int minutes) { Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.MINUTE, minutes); return calendar.getTime(); } // 在给定日期的基础上加上/减去指定的秒数 public static Date addSeconds(Date date, int seconds) { Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.SECOND, seconds); return calendar.getTime(); } // 在给定日期的基础上加上/减去指定的毫秒数 public static Date addMillis(Date date, long millis) { Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.MILLISECOND, (int) millis); return calendar.getTime(); } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值