时间字符串和时间戳转换

时间字符串和时间戳转换

介绍

主要利用Java中的SimpleDateFormat和Date进行时间字符串和时间戳之间的转换,以及时间格式代表的含义。

时间格式(部分)

格式 含义 示例
y year 2018
M month in year 07
w week in year 27
W week in month 6
D day in year 189
d day in month 17
H Hour in day (0-23) 23
h Hour in am/pm (1-12) 3
m Minute in hour 30
s Second in minute 30

转换代码

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

/**
 * Description:  时间处理函数(Java8)
 * <p>
 * Create:       2018/6/16 15:29
 *
 * @author Yang Meng([email protected])
 */
public class TimeUtils {

    /**
     * 时间字符串格式转换为时间戳
     *
     * @param timeStr 时间字符串格式, eg. 2018-06-17 00:00:00
     * @return 时间戳
     * @throws Exception 时间格式解析错误
     */
    public static long time2timestamp(String timeStr) throws Exception {
        return time2timestamp(timeStr, DEFAULT_FORMAT);
    }

    /**
     * 时间字符串格式转换为时间戳
     *
     * @param timeStr 时间字符串格式, eg. 2018-06-17 00:00:00
     * @param timeFormat  时间格式
     * @return 时间戳
     * @throws Exception 时间格式解析错误
     */
    public static long time2timestamp(String timeStr, String timeFormat) throws Exception {
        SimpleDateFormat format = new SimpleDateFormat(timeFormat);
        return format.parse(timeStr).getTime();
    }

    /**
     * 时间戳转换为时间字符串
     *
     * @param timestamp 时间戳, eg. 1513440360000L
     * @return 时间字符串格式
     */
    public static String timestamp2time(long timestamp) {
        SimpleDateFormat format = new SimpleDateFormat(DEFAULT_FORMAT);
        return format.format(new Date(timestamp));
    }

    /**
     * 时间戳转换为时间字符串
     *
     * @param timestamp 时间戳, eg. 1513440360000L
     * @param timeFormat 时间格式
     * @return 时间字符串格式
     */
    public static String timestamp2time(long timestamp, String timeFormat) {
        SimpleDateFormat format = new SimpleDateFormat(timeFormat);
        return format.format(new Date(timestamp));
    }

    /** 默认时间格式: 2018-06-17 16:28:00 */
    private final static String DEFAULT_FORMAT = "yyyy-MM-dd HH:mm:ss";
}

参考

  1. Java类: java.text.SimpleDateFormat,java.util.Date
  2. Java docs: Class SimpleDateFormat

猜你喜欢

转载自blog.csdn.net/ymaini/article/details/80719506
今日推荐