1. 程式人生 > >Java與Unix時間戳的相互轉換

Java與Unix時間戳的相互轉換

Java將Unix時間戳轉換成指定格式日期

當從伺服器獲取資料的時候,有時候獲取的資料中的時間在很多的情況下是時間戳類似於這樣1473048265,當然,我們不可能將這些資料以時間戳的形式展示給使用者,通常情況,是要對這個時間戳進行一系列的處理加工,使其變成我們想要並習慣瀏覽的那種格式,那麼怎麼處理這些時間戳格式的資料呢?每個語言和框架都有自己的方法和方式。

下面將以java的方法來實現,廢話少說直接擼碼……

方法實現

    /**
     * Java將Unix時間戳轉換成指定格式日期字串
     * @param timestampString 時間戳 如:"1473048265";
     * @param
formats 要格式化的格式 預設:"yyyy-MM-dd HH:mm:ss"; * * @return 返回結果 如:"2016-09-05 16:06:42"; */
public static String TimeStamp2Date(String timestampString, String formats) { if (TextUtils.isEmpty(formats)) formats = "yyyy-MM-dd HH:mm:ss"; Long timestamp = Long.parseLong(timestampString) * 1000
; String date = new SimpleDateFormat(formats, Locale.CHINA).format(new Date(timestamp)); return date; }

呼叫方法

TimeStamp2Date("1473048265", "yyyy-MM-dd HH:mm:ss");

返回結果

2016-09-05 16:06:42

將Java指定格式日期轉換成Unix時間戳

    /**
     * 日期格式字串轉換成時間戳
     *
     * @param dateStr 字串日期
     * @param
format 如:yyyy-MM-dd HH:mm:ss * * @return */
public static String Date2TimeStamp(String dateStr, String format) { try { SimpleDateFormat sdf = new SimpleDateFormat(format); return String.valueOf(sdf.parse(dateStr).getTime() / 1000); } catch (Exception e) { e.printStackTrace(); } return ""; }

取得當前時間戳(精確到秒)

    /**
     * 取得當前時間戳(精確到秒)
     *
     * @return nowTimeStamp
     */
    public static String getNowTimeStamp() {
        long time = System.currentTimeMillis();
        String nowTimeStamp = String.valueOf(time / 1000);
        return nowTimeStamp;
    }