常见的日期时间转换符
转换符 | 说明 | 示例 |
%te | 一个月中的某一天(1-31) | 2 |
%tb | 指定语言环境的月份简称 | Feb(英文)、二月(中文) |
%tB | 指定语言环境的月份全称 |
|
%tA | 指定语言环境的星期几全称 | Monday、星期一 |
%ta | 指定语言环境的星期几简称 | Mon、星期一 |
%tc | 包括全部日期和时间信息 | 星期二 三月 25 13:37:22 CST 2008 |
%tY | 4位年份 | 2008 |
%tj | 一年中的第几天(001-366) | 085 |
%tm | 月份 | 04 |
%td | 一个月中的第几天(01-31) | 02 |
%ty | 两位年份 | 08 |
import java.util.Date;public class Eval { public static void main(String[] args) { Date date = new Date(); String year = String.format("%tY", date);//讲date进行格式化 String month = String.format("%tB", date); String day = String.format("%td", date); System.out.println("今年是:"+year+"年"); System.out.println("现在是:"+month); System.out.println("今天是:"+day+"号"); }}
运行结果:今年是:2018年现在是:June今天是:20号
时间格式化符
转换符 | 说明 | 示例 |
%tH | 2位数字的24小时制的小时(00-23) | 14 |
%tI | 2位数字的12小时制的小时(01-12) | 05 |
%tk | 2位数字的24小时制的小时(0-23) | 5 |
%ti | 2位数字的12小时制的小时(1-12) | 5 |
%tM | 2位数字的分钟(00-59) | 05 |
%tS | 2位数字的秒(00-60) | 12 |
%tL | 3位数字的毫秒数(000-999) | 920 |
%tN | 9位数字的毫秒数(000000000-999999999) | 062000000 |
%tp | 指定语言环境下上午或下午标记 | 下午(中文)、pm(英文) |
%tz | 相对于GMT RFC 82 格式的数字时区偏移量 | +0800 |
%tZ | 时区缩写形式的字符串 | CST |
%ts | 1970-01-01 00:00:00至现在经过的秒数 | 1206426646 |
%tQ | 1970-01-01 00:00:00至现在经过的毫秒数 | 1206426737453 |
import java.util.Date;public class GetDate { public static void main(String[] args) { Date date = new Date(); String hour = String.format("%tH", date); String minute = String.format("%tM", date); String second = String.format("%tS", date); System.out.println("现在是:"+hour+"时"+minute+"分"+second+"秒"); } }
运行结果:
现在是:19时01分46秒
常用的日期和时间组合的格式
转换符 | 说明 | 示例 |
%tF | “年-月-日”格式(4位年份) | 2015-04-28 |
%tD | “月/日/年”格式(2位年份) | 04/28/15 |
%tc | 全部日期和时间信息 | 星期二 三月25 13:37:22 CST 2008 |
%tr | “时:分:秒PM(AM)”格式(12时制) | 03:22:06下午 |
%tT | “时:分:秒”格式(24时制) | 15:23:50 |
%tR | “时:分”格式(24时制) | 15:25 |
import java.util.Date;public class GetDate { public static void main(String[] args) { Date date = new Date(); String time = String.format("%tc", date); String form = String.format("%tF", date); //将格式化后的时间日期输出 System.out.println("全部的时间信息是:"+time); System.out.println("年-月-日格式:"+form); }}
运行结果:
全部的时间信息是:Wed Jun 20 19:13:23 CST 2018
年-月-日格式:2018-06-20
注:CST ( China Standard Time UT+8:00 )
常规转换符
import java.util.Date;public class GetDate { public static void main(String[] args) { Date date = new Date(); String str = String.format("%d", 400/2);//将结果以十进制格式显示 String str1 = String.format("%b", 3>5);//将结果以boolean值显示 String str2 = String.format("%x", 200);//将结果以十六进制格式显示 System.out.println("400的一半是:"+str); System.out.println("3>5正确吗:"+str1); System.out.println("200的十六进制是:"+str2); }}
运行结果:
400的一半是:200
3>5正确吗:false
200的十六进制是:c8