今天项目中遇到一个格式问题,收到的timestamp格式是2019-08-19-16:03:21 , 但是入es时,当类型为date的时候,这种格式直接报错,因为索引建的格式是yyyy-MM-dd HH:mm:ss,即中间多了一个横杠。
解决思路,先把时间转化成Date类型,然后再把Date转成字符串的类型。
String --> Date

/**
* @Title: 字符串转日期
* @MethodName: parse
* @Description:
* @param @param strDate
* @param @param pattern
* @param @return
* @return Date
* @throws
*/
public static Date parse(String strDate, String pattern) {
SimpleDateFormat df = new SimpleDateFormat(pattern);
try {
return df.parse(strDate);
} catch (ParseException e) {
e.printStackTrace();
return null;
}
}
Date --> String

/**
* @Title: 日期格式化
* @MethodName: format
* @Description:
* @param @param date
* @param @param pattern
* @param @return
* @return String
* @throws
*/
public static String format(Date date,String pattern){
String rs = "";
if(date!=null){
SimpleDateFormat df = new SimpleDateFormat(pattern);
rs = df.format(date);
}
return rs;
}
转化的时候指定对应的pattern即可。
来源:https://www.cnblogs.com/chenmz1995/p/11474502.html
