MONTH 这是月(从0开始)
WEEK_OF_YEAR 今年的第几星期
WEEK_OF_MONTH 这个月的第几星期(从一开始)
DATE 今天几号
DAY_OF_MONTH 这个月的第几天
DAY_OF_YEAR 这一年的第几天
DAY_OF_WEEK 这周周几(从日开始计算,从1计算)
DAY_OF_WEEK_IN_MONTH 第几周(从第一天开始算一周)
AM_PM 上午还是下午0为上午,1为下午
HOUR 12小时制几点
HOUR_OF_DAY 24小时制几点
MINUTE 多少分
SECOND 多少秒
MILLISECOND 多少毫秒
ZONE_OFFSET 时区
ava代码Calendar cal = Calendar.getInstance();//使用默认时区和语言环境获得一个日历。
cal.add(Calendar.DAY_OF_MONTH, -1);//取当前日期的前一天.
cal.add(Calendar.DAY_OF_MONTH, +1);//取当前日期的后一天.
取月份要加1.
判断当前月份的最大天数:
Java代码Calendar cal = Calendar.getInstance();
int day=cal.getActualMaximum(Calendar.DAY_OF_MONTH);
System.out.println(day);
求两个日期之间相隔的天数:
Java代码java.text.SimpleDateFormat format = new java.text.SimpleDateFormat("yyyy-MM-dd");
java.util.Date beginDate= format.parse("2007-12-24");
java.util.Date endDate= format.parse("2007-12-25");
long day=(date.getTime()-mydate.getTime())/(24*60*60*1000);
System.out.println("相隔的天数="+day);
相差时间:
long difference=c2.getTimeInMillis()-c1.getTimeInMillis();
相差天数:long day=difference/(3600*24*1000)
相差小时:long hour=difference/(3600*1000)
相差分钟:long minute=difference/(60*1000)
相差秒: long second=difference/1000
Calendar c = Calendar.getInstance();
c.add(Calendar.MONTH, 1); // 目前时间加1个月
System.out.println(df.format(c.getTime()));
c.add(Calendar.HOUR, 3); // 目前时间加3小时
System.out.println(df.format(c.getTime()));
c.add(Calendar.YEAR, -2); // 目前时间减2年
System.out.println(df.format(c.getTime()));
c.add(Calendar.DAY_OF_WEEK, 7); // 目前的时间加7天
System.out.println(df.format(c.getTime()));
PS:
1.设置calendar为当前时间
mCalendar.setTimeInMillis(System.currentTimeMillis());
2.格式表格(来自谷歌官方文档)
Date and Time Pattern | Result |
---|---|
"yyyy.MM.dd G 'at' HH:mm:ss z" | 2001.07.04 AD at 12:08:56 PDT |
"EEE, MMM d, ''yy" | Wed, Jul 4, '01 |
"h:mm a" | 12:08 PM |
"hh 'o''clock' a, zzzz" | 12 o'clock PM, Pacific Daylight Time |
"K:mm a, z" | 0:08 PM, PDT |
"yyyyy.MMMMM.dd GGG hh:mm aaa" | 02001.July.04 AD 12:08 PM |
"EEE, d MMM yyyy HH:mm:ss Z" | Wed, 4 Jul 2001 12:08:56 -0700 |
"yyMMddHHmmssZ" | 010704120856-0700 |
"yyyy-MM-dd'T'HH:mm:ss.SSSZ" | 2001-07-04T12:08:56.235-0700 |
"yyyy-MM-dd'T'HH:mm:ss.SSSXXX" | 2001-07-04T12:08:56.235-07:00 |
"YYYY-'W'ww-u" | 2001-W27-3 |
G 年代标志符
y 年
M 月
d 日
h 时 在上午或下午 (1~12)
H 时 在一天中 (0~23)
m 分
s 秒
S 毫秒
E 星期
D 一年中的第几天
F 一月中第几个星期几
w 一年中第几个星期
W 一月中第几个星期
a 上午 / 下午 标记符
k 时 在一天中 (1~24)
K 时 在上午或下午 (0~11)
z 时区
(节选自百度文库)