SimpleDateFormat 是一个以语言环境敏感的方式来格式化和分析日期的类。SimpleDateFormat 允许你选择任何用户自定义日期
时间格式来运行。
例子:
import java.util.*; import java.text.*; public class DataFormat { public static void main(String args[]) { Date dNow = new Date( ); SimpleDateFormat ft = new SimpleDateFormat ("E yyyy.MM.dd 'at' hh:mm:ss a zzz"); //ft是对日期格式的设计,其中不同的字母对应的是不同的时间单位 //其中 yyyy 是完整的公元年,MM 是月份,dd 是日期,HH:mm:ss 是时、分、秒。 System.out.println("Current Date: " + ft.format(dNow)); //注意这里的调用格式dNow是作为实例的参数放在format里面的 } }
输出为:
Current Date: 2018.05.08 at 03:32:47 下午 CST
注意:有的格式大写,有的格式小写,例如 MM 是月份,mm 是分;HH 是 24 小时制,而 hh 是 12 小时制。
还有需要注意的是:
可以使用printf格式化日期
printf 方法可以很轻松地格式化时间和日期。使用两个字母格式,它以 %t 开头并且以下面表格中的一个字母结尾。
这里摘自http://www.runoob.com/java/java-date-time.html
转 换 符 |
说 明 |
示 例 |
---|---|---|
c |
包括全部日期和时间信息 |
星期六 十月 27 14:21:20 CST 2007 |
F |
"年-月-日"格式 |
2007-10-27 |
D |
"月/日/年"格式 |
10/27/07 |
r |
"HH:MM:SS PM"格式(12时制) |
02:25:51 下午 |
T |
"HH:MM:SS"格式(24时制) |
14:28:16 |
R |
"HH:MM"格式(24时制) |
14:28 |
Date date = new Date(); System.out.printf("全部日期和时间信息:%tc%n",date); //f的使用 System.out.printf("年-月-日格式:%tF%n",date); //%n是为了换行
输出结果为:
全部日期和时间信息:星期二 五月 08 16:03:28 CST 2018 年-月-日格式:2018-05-08
主要需要注意的是以%t开始来进行日期的格式化,注意是写在字符串里面