Java时间戳与日期格式字符串的互转

代码:

此类是精确到秒的 ,如需精确到毫秒(不除于1000)就行
public class TimeStampUtils {
          
   
    /**
     * 时间戳转换成日期格式字符串
     * @param seconds 精确到秒的字符串
     * @param format
     * @return
     */
    public static String timeStampDate2(String seconds,String format) {
          
   
        if(seconds == null || seconds.isEmpty() || seconds.equals("null")){
          
   
            return "";
        }
        if(format == null || format.isEmpty()){
          
   
            format = "yyyy-MM-dd HH:mm:ss";
        }
        SimpleDateFormat sdf = new SimpleDateFormat(format);
        return sdf.format(new Date(Long.valueOf(seconds+"000")));
    }
    /**
     * 日期格式字符串转换成时间戳
     *
     * @param date_str
     * @param format   如:yyyy-MM-dd HH:mm:ss
     * @return
     */
    public static String date2TimeStamp(String date_str, String format) {
          
   
        try {
          
   
            SimpleDateFormat sdf = new SimpleDateFormat(format);
            return String.valueOf(sdf.parse(date_str).getTime() / 1000);
        } catch (Exception e) {
          
   
            e.printStackTrace();
        }
        return "";
    }
    /**
     * 取得当前时间戳(精确到秒)
     *
     * @return
     */
    public static String timeStamp() {
          
   
        long time = System.currentTimeMillis();
        String secondsTime = String.valueOf(time / 1000);
        return secondsTime;
    }
测试
public void test1(){
          
   
        //获取当前时间戳,精确当秒
        String timeStamp = TimeStampUtils.timeStamp();
        System.out.println("获取当前时间戳===="+timeStamp);

		/**
		* timeStamp = 当前时间戳
		* 把当前时间戳 转换为日期格式
		*/
        String s = TimeStampUtils.timeStampDate2(timeStamp, "yyyy-MM-dd HH:mm:ss");
        System.out.println("时间戳转换日期格式s:====="+s);
        
        /**
         *    S = 时间戳转换后的日期时间
         *    format :转换日期的格式
         */
        String s2 = TimeStampUtils.date2TimeStamp(s,"yyyy-MM-dd HH:mm:ss");
        System.out.println("日期格式转换时间戳:====="+s2);
    }
经验分享 程序员 微信小程序 职场和发展