Android 時間戳和日期之間的轉化

weixin_33938733發表於2017-10-05

注:轉發請註明原地址:https://www.niwoxuexi.com/blog/android/article/170...

在Android開發過程中,經常會遇到日期的各種格式轉換,主要使用SimpleDateFormat這個類來實現,掌握了這個類,可以轉換任何你想要的各種格式。

常見的日期格式:

  1. 日期格式:String dateString = "2017-06-20 10:30:30" 對應的格式:String pattern = "yyyy-MM-dd HH:mm:ss";
  2. 日期格式:String dateString = "2017-06-20" 對應的格式:String pattern = "yyyy-MM-dd";
  3. 日期格式:String dateString = "2017年06月20日 10時30分30秒 對應的格式:String pattern = "yyyy年MM月dd日 HH時mm分ss秒";
  4. 日期格式:String dateString = "2017年06月20日" 對應的格式:String pattern = "yyyy年MM月dd日";
    下面是幾種情況(其中pattern 根據上面的選擇,如果需要其他的格式,自己去網上查吧)

一、獲取系統時間戳

public long getCurTimeLong(){
    long time=System.currentTimeMillis();
    return time;
}

二、獲取當前時間

public static String getCurDate(String pattern){
    SimpleDateFormat sDateFormat = new SimpleDateFormat(pattern);
    return sDateFormat.format(new java.util.Date());
}

三、時間戳轉換成字元竄

public static String getDateToString(long milSecond, String pattern) {
    Date date = new Date(milSecond);
    SimpleDateFormat format = new SimpleDateFormat(pattern);
    return format.format(date);
}

四、將字串轉為時間戳

public static long getStringToDate(String dateString, String pattern) {
    SimpleDateFormat dateFormat = new SimpleDateFormat(pattern);
    Date date = new Date();
    try{
        date = dateFormat.parse(dateString);
    } catch(ParseException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    return date.getTime();
}

工具類程式碼:

package com.niwoxuexi.testdemo;

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

/**
 * Created by niwoxuexi.com on 2017/6/23.
 */

public class DateUtil {


    /**
     * 獲取系統時間戳
     * @return
     */
    public long getCurTimeLong(){
        long time=System.currentTimeMillis();
        return time;
    }
    /**
     * 獲取當前時間
     * @param pattern
     * @return
     */
    public static String getCurDate(String pattern){
        SimpleDateFormat sDateFormat = new SimpleDateFormat(pattern);
        return sDateFormat.format(new java.util.Date());
    }

    /**
     * 時間戳轉換成字元竄
     * @param milSecond
     * @param pattern
     * @return
     */
    public static String getDateToString(long milSecond, String pattern) {
        Date date = new Date(milSecond);
        SimpleDateFormat format = new SimpleDateFormat(pattern);
        return format.format(date);
    }

    /**
     * 將字串轉為時間戳
     * @param dateString
     * @param pattern
     * @return
     */
    public static long getStringToDate(String dateString, String pattern) {
        SimpleDateFormat dateFormat = new SimpleDateFormat(pattern);
        Date date = new Date();
        try{
            date = dateFormat.parse(dateString);
        } catch(ParseException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return date.getTime();
    }
}

相關文章