android 关于TimeZone的小运用根据時間帯、变换表示時間

package jp.glastonk.dev.util;


import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.TimeZone;

/**
 *根据時間帯、变换表示時間工具类。
 */
public class TimeZoneUtil {

    private static String JAPAN_TIME_ZONE = "GMT+9";
    private static String DATE_SLASH = "/";
    private static String TIME_COLON = ":";
    private static String DATE_SPACE = " ";


    public static TimeZone getDefaultTimeZone() {
        return TimeZone.getDefault();
    }


    /**
     *時間変更
     *
     * @param
     * @param date 時間
     * @return 変更后的時間
     */
    public static Date changeTimeAccordingTimeZone(Date date){

        Date dateChanged = null;
        if (date != null){
            int timeOffset = TimeZone.getTimeZone(TimeZoneUtil.JAPAN_TIME_ZONE).getRawOffset() - getDefaultTimeZone().getRawOffset();
            dateChanged = new Date(date.getTime() - timeOffset);
        }
        return dateChanged;
    }

    /**
     *日本的時間
     *
     * @return 日本の時間 而且是24小时制的结果
     */
    public static Calendar getCalendarInstance(){
        Calendar calendar = new GregorianCalendar(TimeZone.getTimeZone(TimeZoneUtil. JAPAN_TIME_ZONE));
        String japanDateStr = calendar.get(Calendar.YEAR) + TimeZoneUtil.DATE_SLASH
                + (calendar.get(Calendar.MONTH) + 1) + TimeZoneUtil.DATE_SLASH
                + calendar.get(Calendar.DAY_OF_MONTH)+TimeZoneUtil.DATE_SPACE
                +calendar.get(Calendar.HOUR_OF_DAY) + TimeZoneUtil.TIME_COLON
                + calendar.get(Calendar.MINUTE) + TimeZoneUtil.TIME_COLON
                + calendar.get(Calendar.SECOND);
        Date japanDate =  new Date(japanDateStr);
        calendar.setTime(japanDate);
        return calendar;
    }

    /**
     *日本の時間
     *
     * @return 日本の時間
     */
    public static Date getJapanNowDate(){
        Calendar japanCalendar  = getCalendarInstance();
        if(japanCalendar != null){
            Date japanDate =japanCalendar.getTime();
            return japanDate;
        }
        return new Date();
    }
}

时间格式:MMM d yyyy —> Dec 12 2017

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值