<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    javaGrowing

      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      92 隨筆 :: 33 文章 :: 49 評(píng)論 :: 0 Trackbacks
    Date 類實(shí)際上只是一個(gè)包裹類, 它包含的是一個(gè)長(zhǎng)整型數(shù)據(jù), 表示的是從GMT(格林尼治標(biāo)準(zhǔn)時(shí)間)1970年, 1 月 1日00:00:00這一刻之前或者是之后經(jīng)歷的毫秒數(shù).
    創(chuàng)建一個(gè)日期對(duì)象
    讓我們看一個(gè)使用系統(tǒng)的當(dāng)前日期和時(shí)間創(chuàng)建一個(gè)日期對(duì)象并返回一個(gè)長(zhǎng)整數(shù)的簡(jiǎn)單例子. 這個(gè)時(shí)間通常被稱為Java 虛擬機(jī)(JVM)主機(jī)環(huán)境的系統(tǒng)時(shí)間.?
    import?java.util.Date;?
    public?class?DateExample1?
    {?????
    public?static?void?main(String[]?args)?
    ??
    {???
    ?????
    //?Get?the?system??date/time????
    ?????Date?date?=?new?Date();?????
    ?????System.
    out.println(date.getTime());?????
    ??}
    ?
    }
    ?
    在星期六, 2001年9月29日, 下午大約是6:50的樣子, 上面的例子在系統(tǒng)輸出設(shè)備上顯示的結(jié)果是 1001803809710. 在這個(gè)例子中,值得注意的是我們使用了Date 構(gòu)造函數(shù)創(chuàng)建一個(gè)日期對(duì)象, 這個(gè)構(gòu)造函數(shù)沒有接受任何參數(shù). 而這個(gè)構(gòu)造函數(shù)在內(nèi)部使用了System.currentTimeMillis() 方法來從系統(tǒng)獲取日期.

    那么, 現(xiàn)在我們已經(jīng)知道了如何獲取從1970年1月1日開始經(jīng)歷的毫秒數(shù)了. 我們?nèi)绾尾拍芤砸环N用戶明白的格式來顯示這個(gè)日期呢? 在這里類java.text.SimpleDateFormat 和它的抽象基類 java.text.DateFormat 就派得上用場(chǎng)了.


    日期數(shù)據(jù)的定制格式
    假如我們希望定制日期數(shù)據(jù)的格式, 比方星期六-9月-29日-2001年. 下面的例子展示了如何完成這個(gè)工作:
    import?java.text.SimpleDateFormat;?
    import?java.util.Date;?
    public?class?DateExample2?
    {?????
    public?static?void?main(String[]?args)?
    {?
    SimpleDateFormat?bartDateFormat?
    =???????????new?SimpleDateFormat("EEEE-MMMM-dd-yyyy");????????
    ?Date?date?
    =?new?Date();?????????System.out.println(bartDateFormat.format(date));????
    ?}

    ?}

    只要通過向SimpleDateFormat 的構(gòu)造函數(shù)傳遞格式字符串"EEE-MMMM-dd-yyyy", 我們就能夠指明自己想要的格式. 你應(yīng)該可以看見, 格式字符串中的ASCII 字符告訴格式化函數(shù)下面顯示日期數(shù)據(jù)的哪一個(gè)部分. EEEE是星期, MMMM是月, dd是日, yyyy是年. 字符的個(gè)數(shù)決定了日期是如何格式化的.傳遞"EE-MM-dd-yy"會(huì)顯示 Sat-09-29-01. 請(qǐng)察看Sun 公司的Web 站點(diǎn)獲取日期格式化選項(xiàng)的完整的指示.

    將文本數(shù)據(jù)解析成日期對(duì)象
    假設(shè)我們有一個(gè)文本字符串包含了一個(gè)格式化了的日期對(duì)象, 而我們希望解析這個(gè)字符串并從文本日期數(shù)據(jù)創(chuàng)建一個(gè)日期對(duì)象. 我們將再次以格式化字符串"MM-dd-yyyy" 調(diào)用SimpleDateFormat類, 但是這一次, 我們使用格式化解析而不是生成一個(gè)文本日期數(shù)據(jù). 我們的例子, 顯示在下面, 將解析文本字符串"9-29-2001"并創(chuàng)建一個(gè)值為001736000000 的日期對(duì)象.

    例子程序:
    import?java.text.SimpleDateFormat;?
    import?java.util.Date;?
    public?class?DateExample3?{?????
    public?static?void?main(String[]args)?{?
    ????
    //?Create?a?date?formatter?that?can?parse?dates?of??the?form?MM-dd-yyyy.???????
    ??SimpleDateFormat?bartDateFormat?=?new?SimpleDateFormat("MM-dd-yyyy");?????????
    //?Create?a?string?containing?a?text?date?to?be?parsed.????????
    ?String?dateStringToParse?=?"9-29-2001";?????????
    try?{???????????
    ??
    //?Parse?the?text?version?of?the?date.????????????
    ?
    //?We?have?to?perform?the?parse?method?in?a???????????
    ??
    //?try-catch?construct?in?case?dateStringToParse????????????
    ?
    //?does?not?contain?a?date?in?the?format?we?are?expecting.???????????
    ??Date?date?=?bartDateFormat.parse(dateStringToParse);????????????
    ?
    //?Now?send?the?parsed?date?as?a?long?value????????????
    ?
    //?to?the?system?output.????????????
    ????System.out.println(date.getTime());?????????
    ?}
    ?????????
    catch?(Exception?ex)?
    ????
    {????????????
    ??????????System.
    out.println(ex.getMessage());?????????}
    ???
    ????}
    ?
    }
    ?

    使用標(biāo)準(zhǔn)的日期格式化過程
    既然我們已經(jīng)可以生成和解析定制的日期格式了, 讓我們來看一看如何使用內(nèi)建的格式化過程. 方法 DateFormat.getDateTimeInstance() 讓我們得以用幾種不同的方法獲得標(biāo)準(zhǔn)的日期格式化過程. 在下面的例子中, 我們獲取了四個(gè)內(nèi)建的日期格式化過程. 它們包括一個(gè)短的, 中等的, 長(zhǎng)的, 和完整的日期格式.
    import?java.text.DateFormat;?
    import?java.util.Date;?
    public?class?DateExample4?{?????
    public?static?void?main(String[]?args)?

    {??
    ???Date?date?
    =?new?Date();?????????
    DateFormat?shortDateFormat?
    =?DateFormat.getDateTimeInstance(??DateFormat.SHORT,?DateFormat.SHORT);???????
    ???DateFormat?mediumDateFormat?
    =?DateFormat.getDateTimeInstance(?DateFormat.MEDIUM,DateFormat.MEDIUM);?????????
    ???DateFormat?longDateFormat?
    =?????????DateFormat.getDateTimeInstance(?????????DateFormat.LONG,?????????DateFormat.LONG);????????
    ???DateFormat?fullDateFormat?
    =?????????DateFormat.getDateTimeInstance(?????????DateFormat.FULL,?????????DateFormat.FULL);????????
    ???System.
    out.println(shortDateFormat.format(date));?????????
    ???System.
    out.println(mediumDateFormat.format(date));?????????
    ???System.
    out.println(longDateFormat.format(date));?????????
    ???System.
    out.println(fullDateFormat.format(date));????
    ?}
    ?
    }
    ?

    注意我們?cè)趯?duì) getDateTimeInstance的每次調(diào)用中都傳遞了兩個(gè)值. 第一個(gè)參數(shù)是日期風(fēng)格, 而第二個(gè)參數(shù)是時(shí)間風(fēng)格. 它們都是基本數(shù)據(jù)類型int(整型). 考慮到可讀性, 我們使用了DateFormat 類提供的常量: SHORT, MEDIUM, LONG, 和 FULL. 要知道獲取時(shí)間和日期格式化過程的更多的方法和選項(xiàng), 請(qǐng)看Sun 公司W(wǎng)eb 站點(diǎn)上的解釋.

    運(yùn)行我們的例子程序的時(shí)候, 它將向標(biāo)準(zhǔn)輸出設(shè)備輸出下面的內(nèi)容:
    9/29/01 8:44 PM
    Sep 29, 2001 8:44:45 PM
    September 29, 2001 8:44:45 PM EDT
    Saturday, September 29, 2001 8:44:45 PM EDT
    posted on 2005-09-06 15:04 javaGrowing 閱讀(14291) 評(píng)論(2)  編輯  收藏 所屬分類: jsp

    評(píng)論

    # re: Java中Date類的應(yīng)用[未登錄] 2013-05-09 13:23 222
    11111111111111111111  回復(fù)  更多評(píng)論
      

    # re: Java中Date類的應(yīng)用[未登錄] 2014-12-25 12:30 菜鳥
    對(duì)對(duì)對(duì)  回復(fù)  更多評(píng)論
      


    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 人人狠狠综合久久亚洲婷婷| 日韩免费电影网站| 亚洲欧洲视频在线观看| 中文字幕亚洲一区| 情侣视频精品免费的国产| 中文毛片无遮挡高潮免费| 永久免费av无码入口国语片| 又大又硬又粗又黄的视频免费看| 久久久久亚洲国产| 亚洲国产精品综合久久网各| 亚洲Av永久无码精品三区在线| 亚洲国产天堂久久久久久| 免费的一级黄色片| 国内免费高清在线观看| 巨波霸乳在线永久免费视频| 国产免费无码AV片在线观看不卡| 特级毛片A级毛片100免费播放| 亚洲色偷偷色噜噜狠狠99| 亚洲伊人色一综合网| 久久精品国产亚洲AV无码娇色| 亚洲色大成网站www永久一区 | 亚洲国产精品一区第二页| 亚洲国产一区明星换脸| 国产一级淫片免费播放电影| 国内一级一级毛片a免费| 毛片基地免费观看| 大地资源二在线观看免费高清 | 亚洲国产精品久久66| 国产成人亚洲综合色影视| 亚洲狠狠婷婷综合久久久久| 一本久久a久久精品亚洲| 久久影视综合亚洲| 中文字幕亚洲一区二区三区| 亚洲一区无码精品色| 亚洲一区日韩高清中文字幕亚洲 | 亚洲日韩AV无码一区二区三区人| 亚洲第一男人天堂| 亚洲AV无码精品国产成人| 久久久久亚洲精品无码网址色欲| 色天使亚洲综合一区二区| 日韩在线观看免费完整版视频|