java 时间戳与日期字符串相互转换

时间:2021-08-05 13:54:32
  1. /**
  2. * 时间戳转换成日期格式字符串
  3. * @param seconds 精确到秒的字符串
  4. * @param formatStr
  5. * @return
  6. */
  7. public static String timeStamp2Date(String seconds,String format) {
  8. if(seconds == null || seconds.isEmpty() || seconds.equals("null")){
  9. return "";
  10. }
  11. if(format == null || format.isEmpty()) format = "yyyy-MM-dd HH:mm:ss";
  12. SimpleDateFormat sdf = new SimpleDateFormat(format);
  13. return sdf.format(new Date(Long.valueOf(seconds+"000")));
  14. }
  15. /**
  16. * 日期格式字符串转换成时间戳
  17. * @param date 字符串日期
  18. * @param format 如:yyyy-MM-dd HH:mm:ss
  19. * @return
  20. */
  21. public static String date2TimeStamp(String date_str,String format){
  22. try {
  23. SimpleDateFormat sdf = new SimpleDateFormat(format);
  24. return String.valueOf(sdf.parse(date_str).getTime()/1000);
  25. } catch (Exception e) {
  26. e.printStackTrace();
  27. }
  28. return "";
  29. }
  30. /**
  31. * 取得当前时间戳(精确到秒)
  32. * @return
  33. */
  34. public static String timeStamp(){
  35. long time = System.currentTimeMillis();
  36. String t = String.valueOf(time/1000);
  37. return t;
  38. }
  39. //  输出结果:
  40. //  timeStamp=1417792627
  41. //  date=2014-12-05 23:17:07
  42. //  1417792627
  43. public static void main(String[] args) {
  44. String timeStamp = timeStamp();
  45. System.out.println("timeStamp="+timeStamp);
  46. String date = timeStamp2Date(timeStamp, "yyyy-MM-dd HH:mm:ss");
  47. System.out.println("date="+date);
  48. String timeStamp2 = date2TimeStamp(date, "yyyy-MM-dd HH:mm:ss");
  49. System.out.println(timeStamp2);
  50. }