在项目的实际开发过程中会经常用到有关时间的处理,比如获取当前的时间,获取当前的时间戳等。而且我们为了更加的规范往往还需要对时间的格式进行统一的处理。并且还有灵活的对事件以及时间戳进行转换。在实际的项目开发过程中,往往把这些内容抽取处理,作为单独的工具类,小编这里就自己整理了一个时间处理的工具类,若果有不完善的地方,大家一起讨论。

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

public class DateTools {

    /**
     * 当前时间-时间戳
     *
     * @return 根路径
     */
    public static int timestamp() {
        long time = System.currentTimeMillis();
        return (int) (time / 1000);
    }

    /**
     * 获取当前时间-时间(yyyy-MM-dd HH:mm:ss)
     *
     * @return
     */
    public static String timesNow() {
        Date date = new Date();
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        return sdf.format(date);
    }

    /**
     * 格式化时间,默认“yyyy-MM-dd hh:mm:ss”
     *
     * @param timestamp
     * @return
     */
    public static String parseTimestamp(long timestamp) {
        return parseTimestamp(timestamp, "yyyy-MM-dd hh:mm:ss");
    }

    /**
     * 当前格式化时间
     *
     * @return
     */
    public static String formatNow(String aFmt) {
        Date date = new Date();
        String fmt = aFmt;
        if (fmt == null) {
            fmt = "yyyy-MM-dd hh:mm:ss";
        }
        SimpleDateFormat dateFmt = new SimpleDateFormat(fmt);
        String dateStr = dateFmt.format(date);
        return dateStr;
    }

    /**
     * 格式化时间
     *
     * @param timestamp
     * @param fmt       时间格式化字符串
     * @return
     */
    public static String parseTimestamp(long timestamp, String fmt) {
        Date date = new Date(timestamp * 1000);
        SimpleDateFormat dateFmt = new SimpleDateFormat(fmt);
        String dateStr = dateFmt.format(date);
        return dateStr;
    }

    /**
     * 时间转换为时间戳
     *
     * @param time
     * @return
     */
    public static long dateToTimestamp(String time) {
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        try {
            Date date = simpleDateFormat.parse(time);
            long ts = date.getTime() / 1000;
            return ts;
        } catch (ParseException e) {
            return 0;
        }
    }

    /**
     * 时间戳(10位)转换为时间
     * @param time
     * @return
     */
    public static String timestampToDate(Long time) {
        SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String sd = sdf.format(new Date(Long.parseLong(String.valueOf(time*1000))));
        return sd;
    }

}
Last modification:January 4, 2019
If you think my article is useful to you, please feel free to appreciate