你们可以帮忙吗?我正在尝试格式化日期和时间字符串。
目前它看起来像“20160112T110000Z
”,我需要它是“2016-01-12T11:00:00Z
”
从第三方重复库返回没有特殊字符的字符串。在将其解析为Calendar
对象之前,我需要将其转换为具有特殊字符。
有人可以帮忙吗?
到目前为止我的代码如下:
final String TIMEFORMAT = "yyyy-MM-dd'T'HH:mm:ss'Z'";
String string = "20160112T110000Z";
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
Date date = format.parse(string);
System.out.println(date);
然而,这不起作用。
感谢任何建议
答案 0 :(得分:5)
您必须使用与源匹配的格式读取字符串,这样才能为您提供正确的Date
。
然后只需用您想要的格式编写它:
String string = "20160112T110000Z";
String originalStringFormat = "yyyyMMdd'T'HHmmss'Z'";
String desiredStringFormat = "yyyy-MM-dd'T'HH:mm:ss'Z'";
SimpleDateFormat readingFormat = new SimpleDateFormat(originalStringFormat);
SimpleDateFormat outputFormat = new SimpleDateFormat(desiredStringFormat);
try {
Date date = readingFormat.parse(string);
System.out.println(outputFormat.format(date));
} catch (ParseException e) {
e.printStackTrace();
}
答案 1 :(得分:1)
尝试
DateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");
// you can change format of date
Date date = formatter.parse(strDate);
Timestamp timeStampDate = new Timestamp(date.getTime());
return timeStampDate;