`

DateUtil工具类

    博客分类:
  • J2SE
 
阅读更多
/*
 * Copyright (C), 2002-2018, song
 * FileName: DateUtil.java
 * Author:   feng
 * Date:     2018-06-25 下午16:00:00
 * Description: 日期工具类
 * History: //修改记录
 * <author>      <time>      <version>    <desc>
 * 修改人姓名             修改时间            版本号                  描述
 */
package com.suning.vicpp.util;

import java.sql.Time;
import java.sql.Timestamp;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

import org.apache.commons.lang3.time.DateUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

/**
 * 日期工具类
 * 
 * @author feng
 */
public final class DateUtil extends DateUtils {

	private static final  Logger logger = LoggerFactory.getLogger(DateUtil.class);

	/**
	 * 年月日常量
	 */
	public static final String DATEFORMATE_YYYYMMDD = "yyyyMMdd";

	/**
	 * 日期格式
	 */
	public static final String DATEFORMATE_YYYYMMDDHHMMSS = "yyyyMMddHHmmss";

	/**
	 * 日期格式
	 */
	public static final String DATEFORMATE_YYYY_MM_DD_HHMMSS = "yyyy-MM-dd HH:mm:ss";

	/**
	 * 日期格式
	 */
	public static final String DATEFORMATE_YYYY_MM_DD = "yyyy-MM-dd";

	/**
	 * 日期格式
	 */
	public static final String DATEFORMATE_CN_TIME = "yyyy年MM月dd日 HH:mm:ss";

	/**
	 * 日期格式
	 */
	public static final String DATEFORMATE_CN_DATE = "yyyy年MM月dd日";

	/**
	 * 日期格式
	 */
	public static final String DATEFORMATE_YYYYMMDD_SLASH = "yyyy/MM/dd";

	/**
	 * 日期格式
	 */
	public static final String DATEFORMATE_FLAG_HHMMSS = "HH:mm:ss";

	/**
	 * 日期格式
	 */
	public static final String DATEFORMATE_HHMMSS = "hhMMss";

	/**
	 * 日期格式转换器
	 */
	static final DateFormat YYYYMMDDHHMMSS_FORMAT = new java.text.SimpleDateFormat(
			DATEFORMATE_YYYYMMDDHHMMSS);

	/**
	 * 日期格式转换器
	 */
	static final DateFormat YYYYMMDD_FORMAT = new java.text.SimpleDateFormat(
			DATEFORMATE_YYYYMMDD);

	/**
	 * 日期格式转换器
	 */
	static final DateFormat YYYY_MM_DD_FORMAT = new java.text.SimpleDateFormat(
			DATEFORMATE_YYYY_MM_DD_HHMMSS);

	/**
	 * 日期格式转换器
	 */
	static final DateFormat CN_TIME_FORMAT = new java.text.SimpleDateFormat(
			DATEFORMATE_CN_TIME);

	/**
	 * 日期格式转换器
	 */
	static final DateFormat YYYY_MM_DD = new java.text.SimpleDateFormat(
			DATEFORMATE_YYYY_MM_DD);

	/**
	 * 日期格式转换器
	 */
	static final DateFormat YYYYMMDD_SLASH_FORMAT = new java.text.SimpleDateFormat(
			DATEFORMATE_YYYYMMDD_SLASH);

	/**
	 * 日期格式转换器
	 */
	static final DateFormat HHMMSS_FORMAT = new java.text.SimpleDateFormat(
			DATEFORMATE_HHMMSS);

	/**
	 * 日期格式转换器
	 */
	static final DateFormat TIME_FORMATE = new java.text.SimpleDateFormat(
			"HHmmss");

	/**
	 * 格式化日期函数 内部使用
	 * 
	 * 根据指定格式对当前日期进行格式化
	 * 
	 * @param date
	 *            当前日期
	 * @param format
	 *            需要转化的格式
	 * @return String 转换后的字符串格式日期
	 */
	public static String parseDate(Date date, String format) {

		SimpleDateFormat dateformat = new SimpleDateFormat(format);

		return dateformat.format(date);
	}

	/**
	 * 取当前日期 功能描述: 输入参数:<按照参数定义顺序>
	 * 
	 * @param 参数说明
	 *            返回值: 类型 <说明>
	 * @return 返回值
	 * @throw 异常描述
	 * @see 需要参见的其它内容
	 */
	public static java.sql.Date getCurDate() {
		return getDate(getCurTime());
	}



	/**
	 * 取当前日期,格式yyyy-MM-dd HH:mm:ss 功能描述: 输入参数:<按照参数定义顺序>
	 * 
	 * @param 参数说明
	 *            返回值: 类型 <说明>
	 * @return 返回值
	 * @throw 异常描述
	 * @see 需要参见的其它内容
	 */
	public static String getFormatCurDate() {
		SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		Date curdate = getCurDate();
		return formatter.format(curdate);
	}

	/**
	 * 根据指定格式获取当前日期 功能描述: 输入参数:<按照参数定义顺序>
	 * 
	 * @param 参数说明
	 *            返回值: 类型 <说明>
	 * @return 返回值
	 * @throw 异常描述
	 * @see 需要参见的其它内容
	 */
	public static String getFormatCurDate(String format) {
		SimpleDateFormat formatter = new SimpleDateFormat(format);
		Date curdate = getCurDate();
		return formatter.format(curdate);
	}

	/**
	 * 根据类型 type:year;month;day time:表示时间多长,负数标示往前推
	 * 返回当前时间的固定相比时间
	 * @param format
	 *            最终返还的格式
	 * @return
	 */
	public static String getFormatCurDate(String format, String type,
			int time) {
		Date curdate = getCurDate();//当前时间
		Calendar date = Calendar.getInstance();
		SimpleDateFormat formatter = new SimpleDateFormat(format);
		date.setTime(curdate);
		if ("year".equals(type)) {
			date.add(Calendar.YEAR, time);
			return formatter.format(date.getTime());
		} else if ("month".equals(type)) {
			date.add(Calendar.MONTH, time);
			return formatter.format(date.getTime());
		} else if ("day".equals(type)) {
			date.add(Calendar.DATE, time);
			return formatter.format(date.getTime());
		} else {
			return formatter.format(curdate);
		}
	}
	
	public static String getFormatCurDate(String format, String type,
			int time,Date curdate) {
		Calendar date = Calendar.getInstance();
		SimpleDateFormat formatter = new SimpleDateFormat(format);
		date.setTime(curdate);
		if ("year".equals(type)) {
			date.add(Calendar.YEAR, time);
			return formatter.format(date.getTime());
		} else if ("month".equals(type)) {
			date.add(Calendar.MONTH, time);
			return formatter.format(date.getTime());
		} else if ("day".equals(type)) {
			date.add(Calendar.DATE, time);
			return formatter.format(date.getTime());
		} else {
			return formatter.format(curdate);
		}
	}
	
	/**
	 * 把yyyy-MM-dd格式的字符串转换成Date
	 * 
	 * @param dateStr
	 * @return
	 */
	public static java.util.Date getDateOfStr(String dateStr) {
		DateFormat df = new java.text.SimpleDateFormat("yyyy-MM-dd");
		java.util.Date da = null;
		try {
			da = df.parse(dateStr);
		} catch (Exception e) {
			logger.error("DateUtil.getDateOfStr,{}",e);
		}
		return da;
	}

	/**
	 * 获取当前日期 yyyy-MM-dd
	 * 
	 * @return
	 */
	public static String getCurrentDateString() {
		return formateDateStr(new Date());
	}

	/**
	 * 获取明天日期 yyyy-MM-dd
	 * 
	 * @return
	 */
	public static String getTomorrowDateString() {
		return getDateStringDelay(1);
	}

	/**
	 * 获取距离今天 delay 天的日期 yyyy-MM-dd
	 * 
	 * @param delay
	 * @return
	 */
	public static String getDateStringDelay(int delay) {
		return formateDateStr(DateUtil.addDate(new Date(), delay));
	}

	/**
	 * 
	 * 功能描述:取当前时间戳 输入参数:<按照参数定义顺序>
	 * 
	 * @param 参数说明
	 *            返回值: 类型 <说明>
	 * @return 返回值
	 * @throw 异常描述
	 * @see 需要参见的其它内容
	 */
	public static Timestamp getCurTime() {
		return new Timestamp(Calendar.getInstance().getTime().getTime());
	}

	/**
	 * 
	 * 功能描述:取当前时间,以字符串形式返回 输入参数:<按照参数定义顺序>
	 * 
	 * @param 参数说明
	 *            返回值: 类型 <说明>
	 * @return 返回值
	 * @throw 异常描述
	 * @see 需要参见的其它内容
	 */
	public static String getTime() {
		Timestamp time = new Timestamp(Calendar.getInstance().getTime()
				.getTime());
		return time.toString();
	}

	/**
	 * 得到当前日期
	 * 
	 * @param type
	 *            :0日期中间横线;1:有横线
	 * @return
	 */
	public static String getDate(int type) {
		Calendar now = Calendar.getInstance();

		int year = now.get(Calendar.YEAR);

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

		int day = now.get(Calendar.DAY_OF_MONTH);

		String sMonth = String.valueOf(month);

		if (sMonth.length() == 1)
			sMonth = "0" + sMonth;
		String sDay = String.valueOf(day);
		if (sDay.length() == 1)
			sDay = "0" + sDay;
		String tDate = String.valueOf(year) + "-" + sMonth + "-" + sDay;
		if (type == 0)
			tDate = String.valueOf(year) + sMonth + sDay;
		return tDate;
	}

	
	/**
	 * 把日期转换成 yyyyMMdd格式的字符串
	 * 
	 * @param date
	 * @return
	 */
	 public static synchronized String getShortStrDate(java.util.Date date) {
		return YYYYMMDD_FORMAT.format(date);
	}

	/**
	 * 
	 * 把日期转换成 yyyyMMddHHmmss格式的字符串
	 * 
	 * @param date
	 * @return
	 */
	public static synchronized String getShortStrDateTime(java.util.Date date) {
		return YYYYMMDDHHMMSS_FORMAT.format(date);
	}

	/**
	 * 根据Timestamp获得日期
	 * 
	 * @param time
	 * @return java.sql.Date
	 */
	public static java.sql.Date getDate(Timestamp time) {
		return new java.sql.Date(time.getTime());
	}

	/**
	 * 获得对应时间time的相应field的值。 如获得当前时间的分钟,则调用方式如下 getTimeFieldStr(getCurTime(),
	 * Calendar.MINUTE)
	 * 
	 * @param time
	 * @param field
	 * @return String
	 */
	public static String getTimeFieldStr(Timestamp time, int field) {
		Calendar calendar = Calendar.getInstance();
		calendar.setTime(new java.util.Date(time.getTime()));
		int fieldValue = calendar.get(field);
		if (field == Calendar.MONTH)
			fieldValue++;
		return String.valueOf(fieldValue);
	}

	/**
	 * 获得时间time对应的中文日期的字符串
	 * 
	 * @param time
	 * @return String -- 如 2003年5月12日12:12:12
	 */
	public static String getDateTimeCn() {
		DateFormat f3 = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
		return f3.format(new Date());
	}

	/**
	 * 将 Timestamp 对应的日期以 "yyyy-MM-dd" 格式返回一个字符串
	 * 
	 * @param stamp
	 * @return
	 */
	public static String formatDate(Timestamp stamp) {
		if (stamp == null)
			return "";
		return new java.sql.Date(stamp.getTime()).toString();
	}

	/**
	 * 返回前天,昨天,明天,后天等
	 * 
	 * @param diffdate
	 *            于今天相差的天数
	 * @return
	 */
	public static String getCustomDate(int diffdate) {
		SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
		Date curdate = getCurDate();
		long myTime = curdate.getTime() + 1000L * 3600 * 24 * diffdate;
		curdate.setTime(myTime);
		String customDate = formatter.format(curdate);
		return customDate;
	}


	/**
	 * 
	 * 功能描述:根据传入日期格式化,yyyy-MM-dd 输入参数:日期
	 * 
	 * @param 参数说明
	 *            返回值: 类型 String
	 * @return 返回值
	 * @throw 异常描述
	 * @see 需要参见的其它内容
	 */
	public static String getFormatDate(java.util.Date date) {
		SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
		return formatter.format(date);
	}


	/**
	 * 根据传入日期格式化,yyyy-MM-dd,传入null返回null 功能描述: 日期 输入参数:<按照参数定义顺序>
	 * 
	 * @param 参数说明
	 *            返回值: 类型 String
	 * @return 返回值
	 * @throw 异常描述
	 * @see 需要参见的其它内容
	 */
	public static String formateDate(java.util.Date date) {
		DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
		if (date != null) {
			return df.format(date);
		} else {
			return null;
		}
	}

	/**
	 * 格式化日期格式返回字符串
	 * 
	 * @param date
	 * @param dateFormat
	 * @return
	 */
	public static String formateDate(java.util.Date date, DateFormat dateFormat) {
		return dateFormat.format(date);
	}


	/**
	 * 日期格式 yyyy-MM-dd
	 * 
	 * @param date
	 * @return
	 */
	public static synchronized String formateDateStr(java.util.Date date) {
		if (date == null) {
			return "";
		}
		return formateDate(date, YYYY_MM_DD);

	}



	/**
	 * 得到某年某月的第一天
	 * 
	 * @return
	 */
	public static String getMonthFirstDay(int yearAmount,int monthAmount) {
		Calendar calendar = Calendar.getInstance();
		calendar.add(Calendar.YEAR, yearAmount);
		calendar.add(Calendar.MONTH, monthAmount);
		calendar.set(Calendar.DAY_OF_MONTH,
				calendar.getActualMinimum(Calendar.DAY_OF_MONTH));
		return getFormatDate(calendar.getTime());
	}

	/**
	 * 得到某个月的最后一天
	 * 
	 * @return
	 */
	public static String getMonthLastDay(int yearAmount,int monthAmount) {
		Calendar calendar = Calendar.getInstance();
		calendar.add(Calendar.YEAR, yearAmount);
		calendar.add(Calendar.MONTH, monthAmount);
		calendar.set(Calendar.DAY_OF_MONTH,
				calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
		return getFormatDate(calendar.getTime());
	}
	
	/**
	 * 得到某个月的最后一天
	 * 
	 * @return
	 */
	public static int getDayNumOfMonth(int yearAmount,int monthAmount) {
		Calendar calendar = Calendar.getInstance();
		calendar.add(Calendar.YEAR, yearAmount);
		calendar.add(Calendar.MONTH, monthAmount);
		return calendar.getActualMaximum(Calendar.DAY_OF_MONTH);
	}

	/**
	 * 
	 * 功能描述:根据传入日期获取当月第几天 输入参数:日期date
	 * 
	 * @param 参数说明
	 *            返回值: 类型 int
	 * @return 返回值
	 * @throw 异常描述
	 * @see 需要参见的其它内容
	 */
	public static int getDayofMonth(Date date1) {
		Calendar cld = Calendar.getInstance();
		cld.setTime(date1);
		return cld.get(5);
	}


	/**
	 * 日期相加
	 * 
	 * @param date
	 *            日期
	 * @param day
	 *            天数
	 * @return 返回相加后的日期
	 */
	public static java.util.Date addDate(java.util.Date date, int day) {
		java.util.Calendar c = java.util.Calendar.getInstance();
		c.setTimeInMillis(getMillis(date) + ((long) day) * 24 * 3600 * 1000);
		return c.getTime();
	}

	/**
	 * 日期相加
	 * 
	 * @param date
	 *            日期
	 * @param day
	 *            天数
	 * @return 返回相加后的日期
	 */
	public static java.util.Date minusDate(java.util.Date date, int day) {
		java.util.Calendar c = java.util.Calendar.getInstance();
		c.setTimeInMillis(getMillis(date) - ((long) day) * 24 * 3600 * 1000);
		return c.getTime();
	}

	/**
	 * 日期相加
	 * 
	 * @param date
	 *            日期
	 * @param day
	 *            天数
	 * @return 返回相加后的日期
	 */
	public static java.util.Date addDate(java.util.Date date, double day) {
		java.util.Calendar c = java.util.Calendar.getInstance();
		c.setTimeInMillis((long) (getMillis(date) + day * 24 * 3600 * 1000));
		return c.getTime();
	}

	/**
	 * 分钟相加
	 * 
	 * @param date
	 * @param minite
	 * @return
	 */
	public static java.util.Date addMinute(java.util.Date date, double minute) {
		java.util.Calendar c = java.util.Calendar.getInstance();
		c.setTimeInMillis((long) (getMillis(date) + minute * 60 * 1000));
		return c.getTime();
	}

	/**
	 * 日期相减
	 * 
	 * @param date
	 *            日期
	 * @param date1
	 *            日期
	 * @return 返回相减后的日期
	 */
	public static int diffDate(java.util.Date date, java.util.Date date1) {
		return (int) ((getMillis(date) - getMillis(date1)) / (24 * 3600 * 1000));
	}

	/**
	 * 
	 * 功能描述:小时相减 输入参数:date
	 * 
	 * @param 参数说明
	 *            返回值: 类型 int
	 * @return 返回值
	 * @throw 异常描述
	 * @see 需要参见的其它内容
	 */
	public static int diffDateToHour(Date date, Date date1) {
		return (int) ((getMillis(date) - getMillis(date1)) / (1000 * 60 * 60));
	}

	/**
	 * 功能描述: <br>
	 * 两个日期间隔多少秒
	 *
	 * @param firstDate
	 * @param secondDate
	 * @return
	 * @see [相关类/方法](可选)
	 * @since [产品/模块版本](可选)
	 */
	public static int diffSeconds(java.util.Date firstDate,
			java.util.Date secondDate) {
		return (int) ((getMillis(firstDate) - getMillis(secondDate)) / 1000);
	}

	/**
	 * 返回毫秒
	 * 
	 * @param date
	 *            日期
	 * @return 返回毫秒
	 */
	public static long getMillis(java.util.Date date) {
		java.util.Calendar c = java.util.Calendar.getInstance();
		c.setTime(date);
		return c.getTimeInMillis();
	}

	/**
	 * 判断是否同年同月
	 * 
	 * @param t1
	 *            日期1
	 * @param t2
	 *            日期2
	 * @return
	 */
	public static boolean isSameMonth(Timestamp t1, Timestamp t2) {
		Calendar cal = Calendar.getInstance();
		cal.setTime(t1);
		int year1 = cal.get(Calendar.YEAR);
		int month1 = cal.get(Calendar.MONTH);
		logger.info("year1:" + year1 + "month1:" + month1);
		cal.setTime(t2);
		int year2 = cal.get(Calendar.YEAR);
		int month2 = cal.get(Calendar.MONTH);
		logger.info("year2:" + year2 + "month2:" + month2);
		if (year1 == year2 && month1 == month2)
			return true;
		return false;
	}

	/**
	 * 根据传入的数据获取星期
	 * 
	 * @param i
	 * @return
	 */
	public static String getWeek(int i) {
		String result = "";
		switch (i) {
		case 1:
			result = "星期日";
			break;
		case 2:
			result = "星期一";
			break;
		case 3:
			result = "星期二";
			break;
		case 4:
			result = "星期三";
			break;
		case 5:
			result = "星期四";
			break;
		case 6:
			result = "星期五";
			break;
		case 7:
			result = "星期六";
			break;
		default:
			break;
		}
		return result;
	}

	/**
	 * 
	 * 功能描述:根据传入时间获取时间戳 输入参数:date
	 * 
	 * @param 参数说明
	 *            返回值: 类型 Timestamp
	 * @return 返回值
	 * @throw 异常描述
	 * @see 需要参见的其它内容
	 */
	public static Timestamp dateToTimestamp(java.util.Date date) {
		if (date != null) {
			return new java.sql.Timestamp(date.getTime());
		}
		return null;
	}

	/**
	 * 计算两个日期相减
	 * 
	 * @param date1
	 * @param date2
	 * @return 返回天数
	 */
	public static int getDay(java.util.Date date1, java.util.Date date2) {
		Long quot = date2.getTime() - date1.getTime();
		quot = quot / (1000 * 60 * 60 * 24) + 1;
		return quot.intValue();
	}

	// 判断时间s1是否在时间s2之前
	public static boolean compDate(String s1, String s2) {
		int day = 0;
		SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd");
		java.util.Date time1;
		java.util.Date time2;
		try {
			time1 = sf.parse(s1);
			time2 = sf.parse(s2);

			day = (int) ((time2.getTime() - time1.getTime()) / 3600 / 24 / 1000);
		} catch (ParseException e) {
			logger.error(e.getMessage());
		}
		if (day > 0) {
			return true;
		} else {
			return false;
		}
	}

	/**
	 * 
	 * 功能描述:判断时间s1是否在时间s2之前 输入参数:s1,s2
	 * 
	 * @param 参数说明
	 *            返回值: 类型 <说明>
	 * @return 返回值
	 * @throw 异常描述
	 * @see 需要参见的其它内容
	 */
	public static String compareTo(String s1, String s2) {
		int day = 0;
		SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd");
		java.util.Date time1;
		java.util.Date time2;
		try {
			time1 = sf.parse(s1);
			time2 = sf.parse(s2);

			day = (int) ((time2.getTime() - time1.getTime()) / 3600 / 24 / 1000);
		} catch (ParseException e) {
			logger.error(e.getMessage());
		}
		if (day > 0) {
			return s2;
		} else {
			return s1;
		}
	}

	/**
	 * 把日期格式化成中文格式
	 */
	synchronized public static String parseCnDate(Date date) {
		return CN_TIME_FORMAT.format(date);
	}

	public static Time getTime(Timestamp now) {
		SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
		return Time.valueOf(sdf.format(now));
	}

	/**
	 * 把整型转换成时间(如 12345 转换成 01:23:45)
	 * 
	 * @param intValue
	 * @return
	 */
	public static String parseIntValueToTime(Integer intValue) {
		String str = "00:00:00";
		if (intValue != null) {

			String _str = String.valueOf(intValue);
			switch (_str.length()) {
			case 1:
				_str = "00000" + _str;
				break;
			case 2:
				_str = "0000" + _str;
				break;
			case 3:
				_str = "000" + _str;
				break;
			case 4:
				_str = "00" + _str;
				break;
			case 5:
				_str = "0" + _str;
				break;
			case 6:
				break;
			default:
				_str = "000000";
				break;
			}
			str = _str.substring(0, 2) + ":" + _str.substring(2, 4) + ":"
					+ _str.substring(4);
		}
		return str;
	}

	/**
	 * 返回去年的年份
	 * @return
	 * @see [相关类/方法](可选)
	 * @since [产品/模块版本](可选)
	 */
	public static int getLastYear() {
		Calendar now = Calendar.getInstance();
		int year = now.get(Calendar.YEAR) - 1;
		return year;
	}

	public static Date convertToDate(String dateStr) {
		SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		try {
			return format.parse(dateStr);
		} catch (ParseException e) {
			return null;
		}
	}
	
	
	public static Date convertToDate(String dateStr,String formatStr) {
		SimpleDateFormat format = new SimpleDateFormat(formatStr);
		try {
			return format.parse(dateStr);
		} catch (ParseException e) {
			return null;
		}
	}
	
	/**
	 * 返回当前时间的自定义格式String
	 * 
	 * @param dateFormat
	 * @return 自定义格式的日期
	 *         自定义支持的格式有: yyyy-MM-dd HH:mm:ss yyyy年MM月dd日 HH时mm分ss秒 yyyy年MM月dd日
	 *         HH时mm分 yyyy-MM-dd HH:mm yyyyMMddHH:mm:ss yyyy-MM-dd yyyyMMdd
	 *         HHmmss yyyy年MM月dd日 HH:mm:ss" HH时mm分ss秒 ......(很多)
	 */
	public static String getDefinableTime(String dateFormat) {
		if (null == dateFormat || "".equals(dateFormat.trim())) {
			return "";
		}
		Date currentTime = new Date();
		SimpleDateFormat formatter = new SimpleDateFormat(dateFormat);
		String dateString = formatter.format(currentTime);
		return dateString;
	}
	
	/**
	 * 
	 * 日期转换成指定格式的字符串
	 *
	 * @param date
	 * @param formatStr
	 * @return
	 * @see [相关类/方法](可选)
	 * @since [产品/模块版本](可选)
	 */
	public static String getDateStrByFormat(Date date, String formatStr) {
		if (null == date || null == formatStr || "".equals(formatStr.trim())) {
			return "";
		}
		SimpleDateFormat format = new SimpleDateFormat(formatStr);
		return format.format(date);
	}
}

 

0
0
分享到:
评论

相关推荐

    dateUtil工具类

    在Java编程中,DateUtil工具类是用于处理和操作日期时间的一个常见实用程序类。它提供了许多方便的方法,使得开发者可以轻松地进行日期格式化、转换以及比较等操作。在这个"dateUtil工具类"中,我们可以看到核心功能...

    DateUtil 工具类

    public static final String YYYYMMDDHHMMSS = "yyyy/MM/dd HH:mm:ss";

    史上最全面DateUtil工具类,没有之一

    在Java编程领域,DateUtil工具类是开发人员经常会用到的一种辅助类,它提供了一系列方便的方法来处理日期和时间。这个被称为"史上最全面DateUtil工具类,没有之一"的资源,显然包含了处理日期和时间的各种功能,使得...

    java DateUtil工具类时间戳类型转换详解

    Java DateUtil 工具类时间戳类型转换详解 Java DateUtil 工具类是 Java 开发中经常使用的一种日期处理工具类,它提供了多种日期处理方法,包括时间戳类型转换、日期格式化、日期解析等。下面我们将详细介绍 Java ...

    JS DateUtil工具类

    JS日期工具类,方便大家的使用。后期会持续更新.......

    Android-Java中的日期转化格式DateUtil工具类

    这里我们关注的是`DateUtil`工具类,它专门用于处理日期转换格式的操作。`DateUtil`工具类通常包含了对日期进行格式化、解析、比较等常用功能,使得在Android项目中处理日期变得更加便捷。 在Java中,日期对象主要...

    Android开发中日期工具类DateUtil完整实例

    今天,我们将详细介绍DateUtil工具类的实现和使用。 日期工具类的重要性 在Android开发中,日期和时间是非常常见的数据类型。因此,处理日期和时间相关的操作是非常重要的。DateUtil工具类提供了许多有用的方法来...

    DateUtil(通用日期工具类)

    在Java编程中,DateUtil是一个常见的...这些是DateUtil工具类中常见的功能,它们极大地简化了日期和时间的处理工作,提高了代码的可读性和可维护性。在实际项目中,可以根据需求自定义更多实用的方法,提高开发效率。

    DateUtil日期工具类

    DateUtil 日期工具类

    java操作 工具类1.0

    DateUtil工具类旨在简化这个过程。它可能包含一系列静态方法,如获取当前日期、格式化日期字符串、进行日期比较、计算两个日期之间的差值等。例如,可以有一个`formatDate(Date date, String pattern)`方法,用于将...

    dateUtil js工具类

    dateUtil js工具类

    原创强大的jdbc数据库操作工具类

    原创强大的jdbc数据库操作工具类: 1.获取数据源 2.设置数据源 3.获取数据库连接 4.执行insert/delete语句,一个参数列表 ...源码用到的DateUtil工具类,请到http://download.csdn.net/detail/whatismvc/5994343下载。

    Java DateUtil时间工具类

    Java中的DateUtil时间工具类是开发者在处理日期和时间时常用的一个自定义工具类。它通常包含了一系列静态方法,用于简化Java内置的日期和时间API的使用,提高代码的可读性和可维护性。在实际开发中,由于Java 8之前...

    DateUtil(日期工具类)

    在Java编程语言中,`DateUtil`通常是一个自定义的工具类,用于处理与日期和时间相关的操作。这个工具类可以极大地简化日期处理任务,提供比Java内置的`java.util.Date`和`java.time`包更友好的API。在本文中,我们将...

    Java - DateUtil 日期时间转换工具类

    资源名称:DateUtil 日期时间转换工具类 内容概要:日期时间转换工具类,包括基本的Date类型,String类型,TimeStamp类型,LocalDateTime类型,LocalDate类型之间的互相转换,还提供了许多与时间获取,时间计算有关...

    飞龙Java工具类

    DateUtil工具类可能提供了一些便捷的方法,如快速格式化日期、计算两个日期之间的差值、获取当前日期与时间等。例如,`DateUtil.formatDate()`可以将日期对象转换为指定格式的字符串,`DateUtil.between()`用于计算...

    DateUtil java日期工具类

    个人整理的java的关于Date对象的日期时间处理工具类,若存在问题还望大家在评论中提出,我将一直进行修改维护

    Java日期操作方法工具类实例【包含日期比较大小,相加减,判断,验证,获取年份等】

    DateUtil 工具类提供了 isLeapYear 方法,用于判断是否是润年。该方法通过对年份进行判断,来确定是否是润年。 日期相加减 DateUtil 工具类还提供了日期相加减的操作。例如,可以使用 Calendar 对象来对日期进行加...

Global site tag (gtag.js) - Google Analytics