10位的时间戳和⽇期转换⼯具类
由于做项⽬碰到问题:数据库存的时间是10位的时间戳,int类型,但是要在页⾯上显⽰String或者Date类型,了很多资料,终于到了合适的。
代码如下:
1package com.account.bean;
2
SimpleDateFormat;
4import java.util.Date;
5
6public class DateUtil {
7/**
8    * 时间戳转换成⽇期格式字符串
9    * @param seconds 精确到秒的字符串
10*/
11public static String timeStamp2Date(String seconds,String format) {
12if(seconds == null || seconds.isEmpty() || seconds.equals("null")){
13return "";
14        }
15if(format == null || format.isEmpty()){
16            format = "yyyy-MM-dd HH:mm:ss";
17        }
18        SimpleDateFormat sdf = new SimpleDateFormat(format);
19return sdf.format(new Date(Long.valueOf(seconds+"000")));
20    }
21/**
22    * ⽇期格式字符串转换成时间戳
23    * @param date_str 字符串⽇期
24*/
25public static String date2TimeStamp(String date_str,String format){
26try {
27            SimpleDateFormat sdf = new SimpleDateFormat(format);
28return String.valueOf(sdf.parse(date_str).getTime()/1000);
29        } catch (Exception e) {
30            e.printStackTrace();
31        }
32return "";
33    }
34
35/**
36    * 取得当前时间戳(精确到秒)
37    * @return
unix时间戳转换日期格式38*/
39public static String timeStamp(){
40long time = System.currentTimeMillis();
41        String t = String.valueOf(time/1000);
42return t;
43    }
44
45public static void main(String[] args) {
46        String timeStamp = timeStamp();
47        System.out.println("timeStamp="+timeStamp);
48        System.out.println(System.currentTimeMillis());
49//该⽅法的作⽤是返回当前的计算机时间,时间的表达格式为当前计算机时间和GMT时间(格林威治时间)1970年1⽉1号0时0分0秒所差的毫秒数
50
51        String date = timeStamp2Date(timeStamp, "yyyy-MM-dd HH:mm:ss");
52        System.out.println("date="+date);
53        String timeStamp2 = date2TimeStamp(date, "yyyy-MM-dd HH:mm:ss");
54        System.out.println(timeStamp2);
55    }
56 }

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。