package com.iss.iaf.workflow.core.utils;
import java.sql.Timestamp;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
/**
* 日期转换工具类
* @version 1.0
*
*/
public class DateConvertUtil {
/**
* 日期将转换为yyyy-MM-dd HH:mm:ss格式 如2010-01-21 10:10:10
*/
public static String DEFAULT_DATE_PATTERN_EN = "yyyy-MM-dd HH:mm:ss";
/**
* 日期将转换为yyyy年MM月dd日 HH:mm:ss格式 如2010年01月21日 10:10:10
*/
public static String DEFAULT_DATE_PATTERN_CN = "yyyy年MM月dd日 HH:mm:ss";
public static String DEFAULT_DATE_PATTERN = "yyyy-MM-dd";
private static SimpleDateFormat simpleDateFormat;
/**
* 默认构造函数
*/
private DateConvertUtil() {
}
/**
* 将java.util.Date类型转换为字符串
*
* @param date
* java.util.Date
* @return 返回转换之后的字符串, 格式为yyyy-MM-dd HH:mm:ss 如2009-12-12 12:12:12
*/
public static String dateToString(Date date) {
String dateStr = "";
if (null != date) {
simpleDateFormat = new SimpleDateFormat(DEFAULT_DATE_PATTERN_EN);
dateStr = simpleDateFormat.format(date);
}
return dateStr;
}
/**
* 将java.util.Date类型转换为指定pattern形式的字符串
*
* @param date
* java.util.Date
* @param pattern
* 指定要转换的形式,如 yyyy-MM-dd HH:mm:ss
* @return 返回转换之后的字符串
*/
public static String dateToString(Date date, String pattern) {
String dateStr = "";
if (null != date) {
simpleDateFormat = new SimpleDateFormat(pattern);
dateStr = simpleDateFormat.format(date);
}
return dateStr;
}
/**
* 将日期格式的字符串解析成java.util.Date类型
*
* @param source
* 日期格式的字符串
* @return 返回转换之后的java.util.Date类型
*/
public static Date stringToDate(String source) {
Date date = null;
if (null != source && !"".equals(source)) {
simpleDateFormat = new SimpleDateFormat(DEFAULT_DATE_PATTERN_EN);
try {
date = simpleDateFormat.parse(source);
} catch (ParseException e) {
e.printStackTrace();
}
}
return date;
}
/**
* 将字符串转换成日期
* @param input 字符串
* @param pattern 格式
* @return 日期
*/
public static Date parseStringToDate(String input, String pattern) {
final SimpleDateFormat dateFormat = new SimpleDateFormat(pattern);
try {
return dateFormat.parse(input);
} catch (ParseException e) {
e.printStackTrace();
}
return null;
}
/**
* 将DATE转换成TIMESTAMP
* @param input
* @param ts
* @return
*/
public static Timestamp parseDateToTimestamp(Date input) {
final SimpleDateFormat dateFormat = new SimpleDateFormat(DEFAULT_DATE_PATTERN_EN);
String time = dateFormat.format(input);
Timestamp ts = Timestamp.valueOf(time);
return ts;
}
}