我需要将日期(yyyyMMDD)格式化为YYYY-MM-DD。我可以创建后者的日期格式吗?
答案 0 :(得分:10)
是。 使用SimpleDateFormat。
答案 1 :(得分:7)
SimpleDateFormat sourceFormat = new SimpleDateFormat("yyyyMMdd");
SimpleDateFormat targetFormat = new SimpleDateFormat("yyyy-MM-dd");
String sourceDateStr = "20101012";
try {
Date sourceDate = sourceFormat.parse(sourceDateStr);
String targetDateStr = targetFormat.format(sourceDate);
System.out.println(targetDateStr);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
提供输出2010-01-12
答案 2 :(得分:0)
您可以使用像pojava http://www.pojava.org/这样的预先编写的类。 识别不同的日期格式并在它们之间进行翻译是非常好的。
例如,要在上述格式之间进行转换:
try {
System.out.println("Date:" + new DateTime("Date").toString("yyyy-MM-dd"));
} catch (Exception error) {
error.printStackTrace();
}
我发现使用这个课程有帮助,因为我不必太担心那里存在的不同日期格式(英国/美国dd / MM / yyyy和MM / dd / yyyy除外)可以专门配置类)
答案 3 :(得分:0)
看看joda-time:http://joda-time.sourceforge.net/