Android(安卓)时间戳和日期之间的转化

作者: android 发布时间: 2017-06-23 浏览: 5472 次 编辑

注:转发请注明原地址: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();
}



好了,Android的时间转化就写到这儿了,最好贴上工具类代码:

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();
    }
}