java时间转换工具类--SimpleDateFormat

版权声明:本文为博主原创文章,如需转载请标明出处。 https://blog.csdn.net/DGH2430284817/article/details/87169203

一:定义时间转换的格式,根据不同的需求定义不同的时间显示格式:

        //先定义时间转换的格式
	public static final SimpleDateFormat _YMDHMS = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
	public static final SimpleDateFormat _YMD = new SimpleDateFormat("yyyy-MM-dd");
	public static final SimpleDateFormat _YM = new SimpleDateFormat("yyyy-MM");
	public static final SimpleDateFormat YM = new SimpleDateFormat("yyyyMM");
	public static final SimpleDateFormat YMD = new SimpleDateFormat("yyyyMMdd");
	public static final SimpleDateFormat YMDHMS = new SimpleDateFormat("yyyyMMddHHmmss");

二:编写时间转字符串 和 字符串转时间 的工具方法(只列举两种,其他的时间格式可根据下面方法修改得到):

	/** 时间转字符串  
	 * @param rq
	 * @return 格式:yyyyMMdd
	 */
	public static final String formatYmd(Date rq) {
		if(rq == null){
			return "";
		}
		return YMD.format(rq);
	}
	
	/** 字符串转时间   
	 * @param rq 格式:yyyyMMdd
	 * @return
	 * @throws Exception
	 */
	public static final Date parseYmd(String rq) throws Exception {
		if(rq == null){
			return null;
		}
		try {
			return YMD.parse(rq);
		} catch (ParseException e) {
			System.out.println("【字符转换时间异常】:"+e.getMessage());
			throw new Exception( "字符转换时间异常", e);
		}
	}
	
	/** 时间转字符串  
	 * @param rq
	 * @return 格式:yyyy-MM-dd
	 */
	public static final String format_Ymd(Date rq) {
		if(rq == null){
			return "";
		}
		return _YMD.format(rq);
	}
	
	/** 字符串转时间   
	 * @param rq 格式:yyyy-MM-dd
	 * @return
	 * @throws Exception
	 */
	public static final Date parse_Ymd(String rq) throws Exception {
		if(rq == null){
			return null;
		}
		try {
			return _YMD.parse(rq);
		} catch (ParseException e) {
			System.out.println("【字符转换时间异常】:"+e.getMessage());
			throw new Exception( "字符转换时间异常", e);
		}
	}

三:测试:

	//测试方法
	public static void main(String[] args) throws Exception {
		Date date = new Date();
		System.out.println("时间转字符串,格式yyyyMMdd:" + formatYmd(date));
		System.out.println("时间转字符串,格式yyyy-MM-dd:" + format_Ymd(date));
		System.out.println("字符串转时间,格式yyyyMMdd:" + parseYmd("20190213"));
		System.out.println("字符串转时间,格式yyyy-MM-dd:" + parse_Ymd("2019-02-13"));
	}

四:结果:

时间转字符串,格式yyyyMMdd:20190213
时间转字符串,格式yyyy-MM-dd:2019-02-13
字符串转时间,格式yyyyMMdd:Wed Feb 13 00:00:00 CST 2019
字符串转时间,格式yyyy-MM-dd:Wed Feb 13 00:00:00 CST 2019

完整的工具类:DateUtil.java

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;


/**
 * @author 时间转换工具类
 *
 */
public class DateUtil {
	//先定义时间转换的格式
	public static final SimpleDateFormat _YMDHMS = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
	public static final SimpleDateFormat _YMD = new SimpleDateFormat("yyyy-MM-dd");
	public static final SimpleDateFormat _YM = new SimpleDateFormat("yyyy-MM");
	public static final SimpleDateFormat YM = new SimpleDateFormat("yyyyMM");
	public static final SimpleDateFormat YMD = new SimpleDateFormat("yyyyMMdd");
	public static final SimpleDateFormat YMDHMS = new SimpleDateFormat("yyyyMMddHHmmss");
	
	//测试方法
	public static void main(String[] args) throws Exception {
		Date date = new Date();
		System.out.println("时间转字符串,格式yyyyMMdd:" + DateUtil.formatYmd(date));
		System.out.println("时间转字符串,格式yyyy-MM-dd:" + DateUtil.format_Ymd(date));
		System.out.println("字符串转时间,格式yyyyMMdd:" + DateUtil.parseYmd("20190213"));
		System.out.println("字符串转时间,格式yyyy-MM-dd:" + DateUtil.parse_Ymd("2019-02-13"));
	}

	
	/** 时间转字符串  
	 * @param rq
	 * @return 格式:yyyyMMdd
	 */
	public static final String formatYmd(Date rq) {
		if(rq == null){
			return "";
		}
		return YMD.format(rq);
	}
	
	/** 字符串转时间   
	 * @param rq 格式:yyyyMMdd
	 * @return
	 * @throws Exception
	 */
	public static final Date parseYmd(String rq) throws Exception {
		if(rq == null){
			return null;
		}
		try {
			return YMD.parse(rq);
		} catch (ParseException e) {
			System.out.println("【字符转换时间异常】:"+e.getMessage());
			throw new Exception( "字符转换时间异常", e);
		}
	}
	
	/** 时间转字符串  
	 * @param rq
	 * @return 格式:yyyy-MM-dd
	 */
	public static final String format_Ymd(Date rq) {
		if(rq == null){
			return "";
		}
		return _YMD.format(rq);
	}
	
	/** 字符串转时间   
	 * @param rq 格式:yyyy-MM-dd
	 * @return
	 * @throws Exception
	 */
	public static final Date parse_Ymd(String rq) throws Exception {
		if(rq == null){
			return null;
		}
		try {
			return _YMD.parse(rq);
		} catch (ParseException e) {
			System.out.println("【字符转换时间异常】:"+e.getMessage());
			throw new Exception( "字符转换时间异常", e);
		}
	}
	
	

}

猜你喜欢

转载自blog.csdn.net/DGH2430284817/article/details/87169203