java时间类型转换方法
1. Calendar 转 LocalDateTime
| |
| |
| |
| |
| |
| public static LocalDateTime calenderToLocalDateTime(Calendar calendar){ |
| if (calendar == null) { |
| return null; |
| } |
| return LocalDateTime.ofInstant(calendar.toInstant(), ZoneOffset.systemDefault()); |
| } |
| |
| |
| |
| |
| |
| |
| public static LocalDateTime getLocalDateTime(Calendar calendar) { |
| return LocalDateTime.of( |
| ToolForDateTime.getYearByCalendar(calendar) |
| , ToolForDateTime.getMonthByCalendar(calendar) |
| , ToolForDateTime.getDayByCalendar(calendar) |
| , ToolForDateTime.getHourByCalendar(calendar) |
| , ToolForDateTime.getMinuteByCalendar(calendar) |
| , ToolForDateTime.getSecondByCalendar(calendar) |
| , 0 |
| ); |
| } |
2. LocalDateTime转成Calendar
| |
| |
| |
| public static Calendar getCalendarByLocalDateTime(LocalDateTime localDateTime) { |
| int year = localDateTime.getYear(); |
| int month = localDateTime.getMonthValue() - 1; |
| int day = localDateTime.getDayOfMonth(); |
| int hour = localDateTime.getHour(); |
| int minute = localDateTime.getMinute(); |
| int second = localDateTime.getSecond(); |
| int millis = localDateTime.get(ChronoField.MILLI_OF_SECOND); |
| Calendar calendar = new Calendar.Builder() {{ |
| setDate(year, month, day); |
| setTimeOfDay(hour, minute, second, millis); |
| }}.build(); |
| return calendar; |
| } |
3. date 转 LocalDateTime
| |
| |
| |
| |
| |
| public static LocalDateTime dateToLocalDateTime(Date date) { |
| if( date == null ){ |
| return null; |
| } |
| return date.toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime(); |
| } |
| |
| |
| |
| |
| |
| |
| |
| |
| public static LocalDateTime dateToLocalDateTime(Date date) { |
| Instant instant = date.toInstant(); |
| ZoneId zoneId = ZoneId.systemDefault(); |
| return LocalDateTime.ofInstant(instant, zoneId); |
| } |
4. LocalDate转Date
| |
| |
| |
| |
| |
| public static Date localDate2Date(LocalDate localDate) { |
| if (null == localDate) { |
| return null; |
| } |
| ZonedDateTime zonedDateTime = localDate.atStartOfDay(ZoneId.systemDefault()); |
| return Date.from(zonedDateTime.toInstant()); |
| } |
5. LocalDateTime 转换为string
| |
| |
| |
| public static final String format_DateTime = "yyyy-MM-dd HH:mm:ss"; |
| public static final String format_Date = "yyyy-MM-dd"; |
| |
| |
| |
| |
| public static String LocalDateTimeToString(LocalDateTime localDateTime){ |
| DateTimeFormatter df = DateTimeFormatter.ofPattern(format_DateTime); |
| String result = df.format(localDateTime); |
| return result; |
| } |
| |
| |
| |
| |
| public static String LocalDateTimeToStringToDate(LocalDateTime localDateTime){ |
| DateTimeFormatter df = DateTimeFormatter.ofPattern(format_Date); |
| String result = df.format(localDateTime); |
| return result; |
| } |
6. string 转换为LocalDateTime
| |
| |
| |
| public static final String format_DateTime = "yyyy-MM-dd HH:mm:ss"; |
| |
| |
| |
| public static LocalDateTime stringToLocalTime(String str){ |
| DateTimeFormatter df = DateTimeFormatter.ofPattern(format_DateTime); |
| LocalDateTime dateTime = LocalDateTime.parse(str, df); |
| return dateTime; |
| } |
7. date转string
| |
| public static String dateToString(Date date){ |
| SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd"); |
| return ft.format(date); |
| } |
8. string转date(只转换年月日,转换后时分秒默认:00:00:00)
| |
| |
| |
| |
| |
| |
| |
| public static Date stringToDate(String str) throws ParseException { |
| SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd"); |
| return ft.parse(str); |
| } |
9. string转date(年月日时分秒)
| |
| |
| |
| public static final String format_DateTime = "yyyy-MM-dd HH:mm:ss"; |
| |
| |
| |
| |
| |
| |
| |
| public static Date stringToTdate(String str) throws ParseException { |
| return new SimpleDateFormat(format_DateTime).parse(str); |
| } |
10. yyyy-MM-dd格式的字符串转化为 x年x月x日
| |
| |
| |
| public static String StringDateToYearMonthDay(String s){ |
| String[] split = s.split("-"); |
| return split[0] + "年" + split[1] + "月" + split[2] + "日"; |
| } |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· winform 绘制太阳,地球,月球 运作规律
· 上周热点回顾(3.3-3.9)