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

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

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

    孤燈野火
    暢想的天空
    posts - 2,comments - 4,trackbacks - 0

    Java時區的轉換
    邏輯如下:
        
    1.明確你要轉的當前時間所在的時區

    2.明確你要轉向時間所在的時區

    3.獲取當前時間所在時區相對GMT的偏移量

    4.當前時間-相對GMT的偏移量來獲得當前時間的GMT的值

    5.GMT的值+轉向時區相對GMT的偏移量獲取轉向時區的時間值

    例如:你要從GMT+8時間轉向GMT+7時間
    sourceTimeZone 為GMT+8

    targetTimeZone為GMT+7

    /**
     *
     */
    package test;

    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    import java.util.TimeZone;


    public class DateTimeUtil {
     
     static String DEFAULT_TIMEZONE = "GMT+8";
     static String DEFAULT_FORMAT = "d-MMM-yyyy HH:mm (z)";

     /**
      * 轉換時間時區
      * @param convertString  需要轉的時間字符串
      * @param format  格式話字符串 例如d-MMM-yyyy HH:mm (z)
      * @param sourceTimeZone 源時間時區
      * @param targetTimeZone 目標時間時區
      * @return
      * @throws ParseException
      */
     public static Date ConverDateGMT(String convertString,String format,String sourceTimeZone,String targetTimeZone) throws ParseException
     {
      
      Date date=null;
      

      if(isEmpty(sourceTimeZone)){
       sourceTimeZone = DEFAULT_TIMEZONE;
      }
      
      if(isEmpty(targetTimeZone)){
       targetTimeZone = DEFAULT_TIMEZONE;
      }
      
      if(isEmpty(format)){
       format = DEFAULT_FORMAT;
      }
      
      
      
      SimpleDateFormat sdf = new SimpleDateFormat(format);
      
      //獲取傳入的時間值
      Long time = new Date(sdf.parse(convertString).getTime()).getTime();
      
      
      //獲取源時區時間相對的GMT時間
      Long sourceRelativelyGMT=time-TimeZone.getTimeZone(sourceTimeZone).getRawOffset();
      
      //GMT時間+目標時間時區的偏移量獲取目標時間
      Long targetTime=sourceRelativelyGMT+TimeZone.getTimeZone(targetTimeZone).getRawOffset();
      
      
      date= new Date(targetTime);
      
      return date;
      
     }
     
     
     /**
      * Check empty string
      * <pre>
      *   null: true
      *   "": true
      *   " ":true
      * </>
      *
      * @param value
      * @return
      */
     public static boolean isEmpty(String value) {
      boolean emptyFlg = false;
      if (null == value || value.trim().length() <= 0) {
       emptyFlg = true;
      }
      return emptyFlg;
     }
    }
     
     



    posted on 2012-09-17 14:15 孤飛燕 閱讀(7007) 評論(0)  編輯  收藏 所屬分類: Java
    主站蜘蛛池模板: www.av在线免费观看| 中文字幕乱码免费看电影| 日韩精品成人亚洲专区| 男女一边桶一边摸一边脱视频免费| 亚洲色欲色欲www在线丝| 中文字幕成人免费视频| 久久亚洲精品无码av| 久久亚洲国产午夜精品理论片| 免费人成网站在线观看10分钟| 人妻免费久久久久久久了| 亚洲欧洲精品一区二区三区| 国产精品无码一二区免费| 丁香花在线视频观看免费| 亚洲人成色在线观看| 久久精品亚洲视频| 国产成人精品免费视频大全五级| 久久免费高清视频| 在线亚洲v日韩v| 亚洲资源在线观看| 亚洲黄片毛片在线观看| 久久久久久免费视频| 永久免费av无码网站yy| 亚洲国产精品成人午夜在线观看| 亚洲av不卡一区二区三区| 免费国产不卡午夜福在线| 免费黄色福利视频| 在线免费观看h片| 黄色免费在线网址| 亚洲 欧洲 日韩 综合在线| 久久亚洲精品国产精品黑人| 免费一级毛片在线播放| 久久精品女人天堂AV免费观看| 久久精品国产影库免费看| 一级女人18片毛片免费视频| 亚洲欧洲无码AV不卡在线| 亚洲成人福利网站| 亚洲第一中文字幕| 国产亚洲无线码一区二区 | 免费观看激色视频网站(性色)| 特色特黄a毛片高清免费观看| 在线观看亚洲AV日韩AV|