java中LocalDateTime,LocalDate,ZonedDateTime,Date 和String的互相转换

向右看齐 2023-03-04 11:21 68阅读 0赞

最近项目使用mysql数据库进行开发,经常遇到需要日期类型和String进行转换,以下整理了一下各个日期类型和String类型转换的方法,记录一下

  1. package com.mwclg.soa.basic;
  2. import java.text.ParseException;
  3. import java.text.SimpleDateFormat;
  4. import java.time.LocalDate;
  5. import java.time.LocalDateTime;
  6. import java.time.ZoneId;
  7. import java.time.ZonedDateTime;
  8. import java.time.format.DateTimeFormatter;
  9. import java.util.Date;
  10. public class Testa {
  11. public static void main(String[] args) throws ParseException {
  12. //常用的
  13. DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss").withZone(ZoneId.systemDefault());
  14. ZonedDateTime fromTime = ZonedDateTime.parse("2020-09-18 17:11:25", formatter);
  15. //ZonedDateTime 转string
  16. System.out.println(fromTime.format(formatter));
  17. //string转ZonedDateTime
  18. System.out.println(fromTime);
  19. //LocalDate转String
  20. LocalDate date = LocalDate.now();
  21. DateTimeFormatter fmt = DateTimeFormatter.ofPattern("yyyy-MM-dd");
  22. String dateStr = date.format(fmt);
  23. System.out.println("LocalDate转String:"+dateStr);
  24. //localDateTime转String
  25. LocalDateTime dateTime = LocalDateTime.now();
  26. //使用pattern来转换
  27. //12小时制与24小时制输出由hh的大小写决定
  28. DateTimeFormatter fmt12 = DateTimeFormatter.ofPattern("yyyy-MM-dd hh:mm:ss:SSS");
  29. String dateStr12 = dateTime.format(fmt12);
  30. System.out.println("LocalDateTime转String[pattern](12小时制):"+dateStr12);
  31. DateTimeFormatter fmt24 = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss:SSS");
  32. String dateStr24 = dateTime.format(fmt24);
  33. System.out.println("LocalDateTime转String[pattern](24小时制):"+dateStr24);
  34. //string转LocalDate 和LocalDateTime
  35. String str = "2017-11-21 14:41:06:612";
  36. DateTimeFormatter fmts = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss:SSS");
  37. LocalDate dates = LocalDate.parse(str, fmts);
  38. LocalDateTime time = LocalDateTime.parse(str, fmts);
  39. System.out.println("date:"+dates);
  40. System.out.println("time:"+time);
  41. //String 转Date
  42. SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:SSS");
  43. Date dated = simpleDateFormat.parse("2019-10-31 15:24:32:222");
  44. System.out.println("String 转Date:"+dated);
  45. //Date 转String
  46. String dateStrs = simpleDateFormat.format(dated);
  47. System.out.println("Date 转String:"+dateStrs);
  48. }
  49. }

发表评论

表情:
评论列表 (有 0 条评论,68人围观)

还没有评论,来说两句吧...

相关阅读