复习下日期的不同表示


import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Locale;

public class DateTest {
public static void main(String[] args) throws ParseException {
DateTest dateTest=new DateTest();
dateTest.getSystemCurrentTime();
dateTest.getCurrentDate();
// Date date = new Date();
Calendar calendar=Calendar.getInstance();
calendar.set(2011, 1, 1, 1, 1, 1);
Date date=calendar.getTime();
dateTest.differentOutputFormat(date);
dateTest.parseDate();
}
/**
* 毫秒表示(目前有13位)
*/
public void getSystemCurrentTime() {
System.out.println("----系统当前时间----");
System.out.println(System.currentTimeMillis());
}
public void getCurrentDate() {
System.out.println("----获取系统当前日期----");
Date date = new Date();
System.out.println("现在的日期是->" + date.toString());
System.out.println("自1970年1月1日0时0分0秒开始至今所经历的毫秒数->" + date.getTime());
}
public void differentOutputFormat(Date date){
System.out.println("----用不同格式显示日期----");
DateFormat df1 = DateFormat.getInstance();
DateFormat df2 = DateFormat.getDateInstance(DateFormat.DEFAULT);
DateFormat df2_2 = DateFormat.getDateInstance(DateFormat.DEFAULT,Locale.US);
DateFormat df3 = DateFormat.getDateInstance(DateFormat.SHORT);
DateFormat df3_2 = DateFormat.getDateInstance(DateFormat.SHORT,Locale.US);
DateFormat df4 = DateFormat.getDateInstance(DateFormat.MEDIUM);
DateFormat df4_2 = DateFormat.getDateInstance(DateFormat.MEDIUM,Locale.US);
DateFormat df5 = DateFormat.getDateInstance(DateFormat.LONG);
DateFormat df5_2 = DateFormat.getDateInstance(DateFormat.LONG,Locale.US);
DateFormat df6= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss EE");
DateFormat df6_2= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss EE",Locale.US);
String pattern="以下按照字母逐增排列如字母y-> 'y yy yyy yyyy Y YY YYY YYYY'" +
"\n'年代(只能大写)-----------------G-------------->'G GG GGG GGGG" +
"\n'年份(大小写一致) ---------------y-------------->'y yy yyy yyyy Y YY YYY YYYY" +
"\n'月份及分钟(小:分钟 大:月份)---------M----->'m mm mmm mmmm M MM MMM MMMM" +
"\n'周数(小:年中的周数 大:月份中的周数)---w--->'w ww www wwww W WW WWW WWWW"+
"\n'天数(小:年中的天数 大:月份中的天数)---d--->'d dd ddd ddd D DD DDD DDDD"+
"\n'星期(只能大写)------------------F--------------->'F FF FFF FFFF"+
"\n'星期中的天数(只能大写)-------------E----------->'E EE EEE EEEE"+
"\n'Am/pm 标记(只能小写)--------------a---------->'a aa aaa aaaa"+
"\n'小时(小:1-12 大:0-23)--------------H--------->'h hh hhh hhhh H HH HHH HHHH"+
"\n'小时(小:1-24 大:0-11)---------------k--------->'k kk kkk kkkk K KK KKK KKKK"+
"\n'秒数(小:分钟下的秒数 大:毫秒数)-------s------->'s ss sss ssss S SS SSS SSSS"+
"\n'时区(小:General time zone 大:RFC 822 time zone)Z->'z zz zzz zzzz Z ZZ ZZZ ZZZZ"
;
DateFormat df7= new SimpleDateFormat(pattern);
DateFormat df7_2= new SimpleDateFormat(pattern,Locale.US);

System.out.println("默认的日期格式---------------------------------------->"+df1.format(date));
System.out.println("给定格式化风格(DEFAULT)---------------------------->"+df2.format(date));
System.out.println("给定格式化风格(DEFAULT)及语言环境(US)-------->"+df2_2.format(date));
System.out.println("给定格式化风格(SHORT)------------------------------>"+df3.format(date));
System.out.println("给定格式化风格(SHORT)及语言环境(US)---------->"+df3_2.format(date));
System.out.println("给定格式化风格(MEDIUM)---------------------------->"+df4.format(date));
System.out.println("给定格式化风格(MEDIUM)及语言环境(US)--------->"+df4_2.format(date));
System.out.println("给定格式化风格(LONG)-------------------------------->"+df5.format(date));
System.out.println("给定格式化风格(LONG)及语言环境(US)------------->"+df5_2.format(date));
System.out.println("自定义 yyyy-MM-dd HH:mm:ss EE -------------------->"+df6.format(date));
System.out.println("自定义 yyyy-MM-dd HH:mm:ss EE 及语言环境(US)->"+df6_2.format(date));

System.out.println("=============自定义=============\n"+df7.format(date));
System.out.println("=============自定义及语言环境(US)=============\n"+df7_2.format(date));
}


public void parseDate() throws ParseException {
String dateString = "Fri, 21 Oct 2011 5:50:44 +0000";
System.out.println("----解析日期----"+dateString);
String pattern = "E, d MMM y H:m:s Z";
DateFormat df6 = new SimpleDateFormat(pattern, Locale.US);
Date date = df6.parse(dateString);
System.out.println(date.toString());
}

}



结果如下:

----系统当前时间----
1321099331050
----获取系统当前日期----
现在的日期是->Sat Nov 12 20:02:11 CST 2011
自1970年1月1日0时0分0秒开始至今所经历的毫秒数->1321099331050
----用不同格式显示日期----
默认的日期格式---------------------------------------->11-2-1 上午1:01
给定格式化风格(DEFAULT)---------------------------->2011-2-1
给定格式化风格(DEFAULT)及语言环境(US)-------->Feb 1, 2011
给定格式化风格(SHORT)------------------------------>11-2-1
给定格式化风格(SHORT)及语言环境(US)---------->2/1/11
给定格式化风格(MEDIUM)---------------------------->2011-2-1
给定格式化风格(MEDIUM)及语言环境(US)--------->Feb 1, 2011
给定格式化风格(LONG)-------------------------------->2011年2月1日
给定格式化风格(LONG)及语言环境(US)------------->February 1, 2011
自定义 yyyy-MM-dd HH:mm:ss EE -------------------->2011-02-01 01:01:01 星期二
自定义 yyyy-MM-dd HH:mm:ss EE 及语言环境(US)->2011-02-01 01:01:01 Tue
=============自定义=============
以下按照字母逐增排列如字母2011-> y yy yyy yyyy Y YY YYY YYYY
年代(只能大写)-----------------G-------------->公元 公元 公元 公元
年份(大小写一致) ---------------y-------------->2011 11 2011 2011 2011 11 2011 2011
月份及分钟(小:分钟 大:月份)---------M----->1 01 001 0001 2 02 二月 二月
周数(小:年中的周数 大:月份中的周数)---w--->6 06 006 0006 1 01 001 0001
天数(小:年中的天数 大:月份中的天数)---d--->1 01 001 001 32 32 032 0032
星期(只能大写)------------------F--------------->1 01 001 0001
星期中的天数(只能大写)-------------E----------->星期二 星期二 星期二 星期二
Am/pm 标记(只能小写)--------------a---------->上午 上午 上午 上午
小时(小:1-12 大:0-23)--------------H--------->1 01 001 0001 1 01 001 0001
小时(小:1-24 大:0-11)---------------k--------->1 01 001 0001 1 01 001 0001
秒数(小:分钟下的秒数 大:毫秒数)-------s------->1 01 001 0001 77 77 077 0077
时区(小:General time zone 大:RFC 822 time zone)Z->CST CST CST 中国标准时间 +0800 +0800 +0800 +0800
=============自定义及语言环境(US)=============
以下按照字母逐增排列如字母2011-> y yy yyy yyyy Y YY YYY YYYY
年代(只能大写)-----------------G-------------->AD AD AD AD
年份(大小写一致) ---------------y-------------->2011 11 2011 2011 2011 11 2011 2011
月份及分钟(小:分钟 大:月份)---------M----->1 01 001 0001 2 02 Feb February
周数(小:年中的周数 大:月份中的周数)---w--->6 06 006 0006 1 01 001 0001
天数(小:年中的天数 大:月份中的天数)---d--->1 01 001 001 32 32 032 0032
星期(只能大写)------------------F--------------->1 01 001 0001
星期中的天数(只能大写)-------------E----------->Tue Tue Tue Tuesday
Am/pm 标记(只能小写)--------------a---------->AM AM AM AM
小时(小:1-12 大:0-23)--------------H--------->1 01 001 0001 1 01 001 0001
小时(小:1-24 大:0-11)---------------k--------->1 01 001 0001 1 01 001 0001
秒数(小:分钟下的秒数 大:毫秒数)-------s------->1 01 001 0001 77 77 077 0077
时区(小:General time zone 大:RFC 822 time zone)Z->CST CST CST China Standard Time +0800 +0800 +0800 +0800
----解析日期----Fri, 21 Oct 2011 5:50:44 +0000
Fri Oct 21 13:50:44 CST 2011

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值