隨筆-61  評(píng)論-159  文章-0  trackbacks-0

          今天處理一個(gè)Java日期時(shí)間運(yùn)算問題:
          嘗試過幾種方法,覺得還是如下方法處理比較靈活,代碼如下:

           

           1package org.mmc.date.cal;
           2
           3import java.util.Date;
           4import java.util.Calendar;
           5import java.util.GregorianCalendar;
           6import java.text.SimpleDateFormat;
           7public class DateCal {
           8    Date date = new Date();
           9    GregorianCalendar gc = new GregorianCalendar();
          10    SimpleDateFormat  sf = new SimpleDateFormat("yyyy-MM-dd HH:MM:ss");
          11    /**
          12     * 
          13     * gc.add(1,1)年份加1
          14     * gc.add(2,1)月份加1
          15     * gc.add(3,1)周加1
          16     * gc.add(5,1)天加1
          17     * 如果為-1表示是減
          18     */

          19    public String getDateCal(int d,int beforeMonth)
          20    {
          21        gc.setTime(date);
          22        gc.add(d,beforeMonth);
          23        gc.set(gc.get(Calendar.YEAR),gc.get(Calendar.MONTH),gc.get(Calendar.DATE));
          24        return sf.format(gc.getTime());
          25    }

          26    public String getCurrentDate()
          27    {
          28        return sf.format(date);
          29    }

          30    public static  void  main(String[] args)
          31    {
          32        DateCal ud= new DateCal();
          33        System.out.println("當(dāng)前時(shí)間  :"+ud.getCurrentDate());
          34        System.out.println("前一年    :"+ud.getDateCal(1-1));
          35        System.out.println("前一個(gè)月  :"+ud.getDateCal(2,-1));
          36        System.out.println("前一個(gè)星期:"+ud.getDateCal(3-1));
          37        System.out.println("前一天    :"+ud.getDateCal(5-1));
          38    }

          39
          40}

          41 
          42


          輸出結(jié)果:

          當(dāng)前時(shí)間  :2009-03-19 21:03:48
          前一年    :2008-03-19 21:03:48
          前一個(gè)月  :2009-02-19 21:02:48
          前一個(gè)星期:2009-03-12 21:03:48
          前一天    :2009-03-18 21:03:48
          分析:
          深入GregorianCalendar中的add方法源碼,代碼比較長想研究的自己看源代碼。


           



          -------------------------------------------------------------------------------------------------
          PS:本博客文章,如果沒有注明是有“轉(zhuǎn)”字樣,屬于本人原創(chuàng)。如果需要轉(zhuǎn)載,務(wù)必注明作者文章的詳細(xì)出處地址,否則不允許轉(zhuǎn)載,多謝合作!
          posted on 2009-03-19 21:56 apple0668 閱讀(1515) 評(píng)論(0)  編輯  收藏

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


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 桃园市| 长汀县| 万全县| 淮滨县| 江源县| 柏乡县| 滁州市| 富平县| 石狮市| 达尔| 福泉市| 陆川县| 涞水县| 高安市| 彝良县| 张家川| 军事| 惠安县| 铜鼓县| 江西省| 安远县| 安溪县| 徐闻县| 石嘴山市| 博客| 教育| 梁河县| 永兴县| 方正县| 绥棱县| 鄂尔多斯市| 城口县| 平江县| 舒兰市| 宁强县| 全椒县| 汕头市| 哈密市| 界首市| 招远市| 揭西县|