Java中字符串转时间与时间转字符串的操作详解

 更新时间:2025年04月25日 10:22:43   作者:Java皇帝  
Java 的 java.time 包提供了强大的日期和时间处理功能,通过 DateTimeFormatter 可以轻松地在日期时间对象和字符串之间进行转换,下面小编给大家详细介绍一下Java中字符串转时间与时间转字符串的操作,需要的朋友可以参考下

一、字符串转时间

在 Java 中,可以使用 java.time 包中的 DateTimeFormatter 类将字符串格式的日期时间转换为 LocalDateTime 或 ZonedDateTime 对象。

(一)使用预定义格式

import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;

public class StringToDateExample {
    public static void main(String[] args) {
        String isoDateTime = "2023-10-11T12:34:56";
        DateTimeFormatter formatter = DateTimeFormatter.ISO_DATE_TIME;
        LocalDateTime dateTime = LocalDateTime.parse(isoDateTime, formatter);
        System.out.println("解析后的日期时间: " + dateTime);
    }
}

(二)自定义格式

import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;

public class CustomStringToDateExample {
    public static void main(String[] args) {
        String customDateTime = "2023-10-11 12:34:56";
        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
        LocalDateTime dateTime = LocalDateTime.parse(customDateTime, formatter);
        System.out.println("解析后的日期时间: " + dateTime);
    }
}

二、时间转字符串

将日期时间对象格式化为字符串,可以使用 DateTimeFormatter 类。

(一)使用预定义格式

import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;

public class DateToStringExample {
    public static void main(String[] args) {
        LocalDateTime now = LocalDateTime.now();
        DateTimeFormatter formatter = DateTimeFormatter.ISO_DATE_TIME;
        String formattedDate = now.format(formatter);
        System.out.println("ISO格式日期时间: " + formattedDate);
    }
}

(二)自定义格式

import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;

public class CustomDateToStringExample {
    public static void main(String[] args) {
        LocalDateTime now = LocalDateTime.now();
        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
        String formattedDate = now.format(formatter);
        System.out.println("自定义格式日期时间: " + formattedDate);
    }
}

三、处理不同时区的日期

在处理不同时区的日期时,可以使用 ZonedDateTime 类。

(一)字符串转带时区的日期时间

import java.time.ZonedDateTime;
import java.time.format.DateTimeFormatter;

public class StringToZonedDateTimeExample {
    public static void main(String[] args) {
        String zonedDateTimeString = "2023-10-11T12:34:56-04:00";
        DateTimeFormatter formatter = DateTimeFormatter.ISO_ZONED_DATE_TIME;
        ZonedDateTime zonedDateTime = ZonedDateTime.parse(zonedDateTimeString, formatter);
        System.out.println("解析后的带时区日期时间: " + zonedDateTime);
    }
}

(二)带时区的日期时间转字符串

import java.time.ZonedDateTime;
import java.time.format.DateTimeFormatter;

public class ZonedDateTimeToStringExample {
    public static void main(String[] args) {
        ZonedDateTime now = ZonedDateTime.now();
        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss z");
        String formattedDate = now.format(formatter);
        System.out.println("带时区的日期时间字符串: " + formattedDate);
    }
}

四、总结

Java 的 java.time 包提供了强大的日期和时间处理功能,通过 DateTimeFormatter 可以轻松地在日期时间对象和字符串之间进行转换。

到此这篇关于Java中字符串转时间与时间转字符串的操作详解的文章就介绍到这了,更多相关Java字符串与时间互转内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 使用EasyExcel实现简单的Excel表格解析操作

    使用EasyExcel实现简单的Excel表格解析操作

    这篇文章主要介绍了如何使用EasyExcel完成简单的表格解析操作,同时实现了大量数据情况下数据的分次批量入库,并记录每条数据入库的状态,感兴趣的可以了解下
    2025-03-03
  • 深入理解SpringBoot中关于Mybatis使用方法

    深入理解SpringBoot中关于Mybatis使用方法

    这篇文章主要介绍了SpringBoot中关于Mybatis使用方法,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-03-03
  • Java数组的遍历与求和知识点

    Java数组的遍历与求和知识点

    本篇文章给大家总计了Java数组的遍历与求和的知识点以及需要注意的地方,需要的朋友参考学习下。
    2018-02-02
  • 带你了解Java Maven的打包操作

    带你了解Java Maven的打包操作

    这篇文章主要介绍了Maven打包的相关知识,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-09-09
  • JDK20 + SpringBoot 3.1.0 + JdbcTemplate 使用案例详解

    JDK20 + SpringBoot 3.1.0 + JdbcTemplate 使用案例详解

    通过 JdbcTemplate 直接执行 SQL 语句,结合源码动态编译即可方便实现动态修改代码逻辑的效果,这篇文章主要介绍了JDK20 + SpringBoot 3.1.0 + JdbcTemplate 使用,需要的朋友可以参考下
    2023-09-09
  • Java TCP协议通信超详细讲解

    Java TCP协议通信超详细讲解

    TCP/IP是一种面向连接的、可靠的、基于字节流的传输层通信协议,它会保证数据不丢包、不乱序。TCP全名是Transmission Control Protocol,它是位于网络OSI模型中的第四层
    2022-09-09
  • Java 中组合模型之对象结构模式的详解

    Java 中组合模型之对象结构模式的详解

    这篇文章主要介绍了Java 中组合模型之对象结构模式的详解的相关资料,希望通过本文能帮助到大家理解应用对象结构模型,需要的朋友可以参考下
    2017-09-09
  • 详解Java中Collection集合的常用方法

    详解Java中Collection集合的常用方法

    本篇文章给大家带来的内容是关于Java中Collection集合的常用方法详解,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。下面我们就来学习一下吧
    2021-11-11
  • Java 继承和多态的作用及好处

    Java 继承和多态的作用及好处

    文章讲解Java继承与多态的概念、语法及应用,继承通过extends复用父类成员,减少冗余;多态实现方法重写与向上转型,提升灵活性与代码复用性,动态绑定降低圈复杂度,感兴趣的朋友一起看看吧
    2025-06-06
  • 三分钟带你搞懂springboot原理

    三分钟带你搞懂springboot原理

    Spring Boot 通过自动配置、起步依赖和嵌入式服务器等特性,极大地简化了 Spring 应用的开发和部署流程,其核心原理包括自动配置机制、条件注解和配置文件加载顺序等,这篇文章主要介绍了Spring Boot 原理详解,三分钟带你搞懂springboot原理,需要的朋友可以参考下
    2025-04-04

最新评论