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

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

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

    Java Blog for Alex Wan

    Let life be beautiful like summer flowers and death like autumn leaves.

    統(tǒng)計

    留言簿(10)

    BlogJava

    Blogs

    DIV+CSS

    JQuery相關(guān)

    友情鏈接

    常去的地方

    數(shù)據(jù)供應(yīng)

    閱讀排行榜

    評論排行榜

    常用的與時間戳(Timestamp)相關(guān)的函數(shù)總結(jié)TimestampUtil

    TimestampUtil.java
    package util;

    import java.sql.Timestamp;
    import java.util.Calendar;

    public class TimestampUtil {
     
    public final static int YEAR=1;
     
    public final static int MONTH=2;
     
    public final static int DAY=3;
     
    public final static int HOUR=4;
     
    public final static int MINUTE=5;
     
    public final static int SECOND=6;
     
    public final static int WEEK=7;
     
    public final static int MILLISECOND=8;
     
    public final static int CENTURY=9;
     
    public final static int SUNDAY=Calendar.SUNDAY;
     
    public final static int MONDAY=Calendar.MONDAY;
     
    public final static int WEDNESDAY=Calendar.WEDNESDAY;
     
    public final static int TUESDAY=Calendar.TUESDAY;
     
    public final static int THURSDAY=Calendar.THURSDAY;
     
    public final static int FRIDAY=Calendar.FRIDAY;
     
    public final static int SATURDAY=Calendar.SATURDAY;
     
    //獲取若干偏移量的時間戳(Timestamp),參數(shù)一為操作時間戳(Timestamp),參數(shù)二為偏移單位,參數(shù)三為偏移值
     public static Timestamp getTiemstamp(Timestamp operTime, int unit, int value) {
      
    if (operTime==nullreturn null;
      Calendar c 
    = Calendar.getInstance();
      c.setTime(operTime);
      Timestamp newTime
    =null;
      
    switch(unit)
      
    {
      
    case YEAR:
       c.set(Calendar.YEAR, c.get(Calendar.YEAR) 
    + value);
       newTime
    =new Timestamp(c.getTimeInMillis());
       
    break;
      
    case MONTH:
       c.set(Calendar.MONTH, c.get(Calendar.MONTH) 
    + value);
       newTime
    =new Timestamp(c.getTimeInMillis());
       
    break;
      
    case DAY:
       c.set(Calendar.DATE, c.get(Calendar.DATE) 
    + value);
       newTime
    =new Timestamp(c.getTimeInMillis());
       
    break;
      
    case HOUR:
       c.set(Calendar.HOUR, c.get(Calendar.HOUR) 
    + value);
       newTime
    =new Timestamp(c.getTimeInMillis());
       
    break;
      
    case MINUTE:
       c.set(Calendar.MINUTE, c.get(Calendar.MINUTE) 
    + value);
       newTime
    =new Timestamp(c.getTimeInMillis());
       
    break;
      
    case SECOND:
       c.set(Calendar.SECOND, c.get(Calendar.SECOND) 
    + value);
       newTime
    =new Timestamp(c.getTimeInMillis());
       
    break;
      
    case WEEK:
       c.set(Calendar.DATE, c.get(Calendar.DATE) 
    + 7*value);
       newTime
    =new Timestamp(c.getTimeInMillis());
       
    break;
      
    case MILLISECOND:
       c.set(Calendar.MILLISECOND, c.get(Calendar.MILLISECOND) 
    + value);
       newTime
    =new Timestamp(c.getTimeInMillis());
       
    break;
      
    case CENTURY:
       c.set(Calendar.YEAR, c.get(Calendar.YEAR) 
    + 100*value);
       newTime
    =new Timestamp(c.getTimeInMillis());
       
    break;
      
    default:break;
      }

      
    return  newTime;
     }

     
     
     
    //獲取若干偏移量的時間戳(Timestamp),參數(shù)一為操作時間戳(Timestamp),參數(shù)二為偏移單位,參數(shù)三為偏移值,參數(shù)四標(biāo)記是否獲取該天開始那一刻,參數(shù)五標(biāo)記是否獲取該天結(jié)束那一刻(參數(shù)四優(yōu)先參數(shù)五)
     public static Timestamp getTiemstamp(Timestamp operTime, int unit, int value,
       
    boolean fromStart, boolean toEnd) {
      
    if (operTime==nullreturn null;
      Calendar c 
    = Calendar.getInstance();
      c.setTime(getTiemstamp( operTime,unit,value));
      
    if (fromStart) {
       c.set(Calendar.HOUR, 
    0);
       c.set(Calendar.MINUTE, 
    0);
       c.set(Calendar.SECOND, 
    0);
      }

      
    else
      

      
    if (toEnd) {
       c.set(Calendar.HOUR, 
    23);
       c.set(Calendar.MINUTE, 
    59);
       c.set(Calendar.SECOND, 
    59);
      }

      }

      
    return new Timestamp(c.getTimeInMillis());
     }

     
     
    //獲取精度到指定單位的時間戳字符串
     public static String getTimestampString(Timestamp operTime,int unit)
     
    {
      
    if(operTime!=null)
      
    {
       String str
    ="N/A";
       
    switch(unit)
       
    {
       
    case YEAR:
        str
    =operTime.toString().substring(0,4);
       
    case MONTH:
        str
    =operTime.toString().substring(0,7);
        
    break;
       
    case DAY:
        str
    =operTime.toString().substring(0,10);
        
    break;
       
    case HOUR:
        str
    =operTime.toString().substring(0,13);
        
    break;
       
    case MINUTE:
        str
    =operTime.toString().substring(0,16);
        
    break;
       
    case SECOND:
        str
    = operTime.toString().substring(0,19); 
        
    break;
       
    case MILLISECOND:
        str
    = operTime.toString(); 
        
    break;
       
    default:break;
       }

       
    return str;
      }

      
    return "N/A";
     }

     
     
    //判斷兩個時間戳(Timestamp)是否在同一天
     public static boolean isTheSameDate(Timestamp time1,Timestamp time2 ) 
     
    {
      
    if(time1!=null&&time2!=null){
      Calendar c1
    =Calendar.getInstance();
      c1.setTime(time1);
      
    int y1=c1.get(Calendar.YEAR);
      
    int m1=c1.get(Calendar.MONTH);
      
    int d1=c1.get(Calendar.DATE);
      Calendar c2
    =Calendar.getInstance();
      c2.setTime(time2);
      
    int y2=c2.get(Calendar.YEAR);
      
    int m2=c2.get(Calendar.MONTH);
      
    int d2=c2.get(Calendar.DATE);
      
    if(y1==y2&&m1==m2&&d1==d2)
      
    {
       
    return true;
      }

      }

      
    else
      
    {
       
    if(time1==null&&time2==null)
       
    {
        
    return true;
       }

      }

      
    return false;
     }

     
     
    //獲取操作時間戳(Timestamp)所在周的一天,其順序為:星期天,一,二,三,四,五,六
     public static Timestamp getDayOfWeek(Timestamp operTime,int day)
     
    {
      
    if(operTime!=null&&day>0&&day<=7)
      
    {
      Calendar c
    =Calendar.getInstance();
      c.setTime(operTime);
      c.set(Calendar.DAY_OF_WEEK, day);
      
    return new Timestamp(c.getTimeInMillis());
      }

      
    return null;
       
     }

    }





    //功能注釋已經(jīng)說明,不在累贅。繼續(xù)總結(jié)中,熱烈歡迎各位朋友來此討論

    Let life be beautiful like summer flowers and death like autumn leaves.

    posted on 2008-06-07 10:24 Alexwan 閱讀(2905) 評論(0)  編輯  收藏


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


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 亚洲高清免费在线观看| 久久w5ww成w人免费| 免费国产精品视频| 久久亚洲欧美国产精品| 免费被黄网站在观看| 人人狠狠综合久久亚洲| 四虎永久免费地址在线观看| 在线视频亚洲一区| 免费在线观看黄色毛片| 国产免费高清69式视频在线观看| 亚洲精品成人网站在线观看| 免费一级不卡毛片| 91在线精品亚洲一区二区| 妻子5免费完整高清电视| 亚洲日韩中文字幕无码一区| 凹凸精品视频分类国产品免费| 无码免费又爽又高潮喷水的视频 | 国产乱码免费卡1卡二卡3卡| 亚洲精品伊人久久久久| 免费毛片网站在线观看| 美女被免费网站在线视频免费| 国产AV无码专区亚洲AWWW| 蜜桃视频在线观看免费视频网站WWW| 久久亚洲国产精品成人AV秋霞| 蜜桃视频在线观看免费网址入口| 爱情岛亚洲论坛在线观看| 亚洲线精品一区二区三区| 久久青草免费91线频观看站街| 亚洲国产日韩在线成人蜜芽| 国产精品免费电影| 在线看片免费人成视频播| 亚洲成av人片在线看片| 免费jjzz在线播放国产| 久久aa毛片免费播放嗯啊| 亚洲一区二区三区乱码在线欧洲| 亚洲国产精品狼友中文久久久 | 免费下载成人电影| 日本黄页网址在线看免费不卡| 亚洲av不卡一区二区三区| 免费看国产成年无码AV片| 伊人久久国产免费观看视频|