Java中SimpleDateFormat日期格式转换详解及代码示例

下面就详细讲解一下“Java中SimpleDateFormat日期格式转换详解及代码示例”的攻略。

1. 什么是SimpleDateFormat

SimpleDateFormat是Java中一个非常实用的日期格式化类,它能够将日期按照指定的格式进行转换,并且还支持将字符串转换成日期。SimpleDateFormat类的格式化符号遵循类似于Unix系统下的日期格式化符号,比较直观简单。

2. SimpleDateFormat的使用

SimpleDateFormat的常用方法有两个,分别是format()和parse()。其中,format()方法可以将Date类型的日期转换成指定格式的字符串类型,如下所示:

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateStr = sdf.format(new Date());
System.out.println(dateStr);

在上述代码中,我们先创建了一个SimpleDateFormat对象,然后调用它的format()方法将当前时间转换成指定格式的字符串,输出结果为:

2022-01-01 09:00:00

另一方面,parse()方法可以将指定格式的字符串类型转换成Date类型的日期,如下示例所示:

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateStr = "2022-01-01 09:00:00";
Date date = sdf.parse(dateStr);
System.out.println(date);

在上述代码中,我们同样先创建了一个SimpleDateFormat对象,然后调用它的parse()方法将指定格式的字符串转换成Date类型的日期,输出结果为:

Sat Jan 01 09:00:00 GMT 2022

3. SimpleDateFormat的格式化符号

下面是SimpleDateFormat常用的格式化符号:

  • yyyy:年(如2022)
  • MM:月(如01)
  • dd:日(如01)
  • HH:时(24小时制,如09)
  • mm:分(如00)
  • ss:秒(如00)
  • S:毫秒(如000)
  • E:星期(如Saturday)

在使用SimpleDateFormat时,我们可以通过这些格式化符号在指定格式中使用,从而满足各种不同格式的需求。

4. 示例

下面再给出两个SimpleDateFormat的示例,帮助大家更好地理解它的使用。

示例一

我们有如下一个字符串类型的日期:

2022-01-01T09:00:00.000+08:00

现在我们希望将它转换成指定格式的日期(如yyyy-MM-dd HH:mm:ss),代码如下:

SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSXXX");
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateStr = "2022-01-01T09:00:00.000+08:00";
Date date = sdf1.parse(dateStr);
String newDateStr = sdf2.format(date);
System.out.println(newDateStr);

在上述代码中,我们首先创建了两个SimpleDateFormat对象,分别用于解析原字符串和格式化新日期。然后将原字符串解析成Date类型的日期,并使用第二个SimpleDateFormat对象格式化成最终的目标日期格式。输出结果为:

2022-01-01 09:00:00

示例二

我们有如下一个Date类型的日期:

Sat Jan 01 09:00:00 GMT 2022

现在我们希望将它转换成指定格式的字符串(如yyyy_MM_dd_HH_mm_ss),代码如下:

SimpleDateFormat sdf = new SimpleDateFormat("yyyy_MM_dd_HH_mm_ss");
Date date = new Date("Sat Jan 01 09:00:00 GMT 2022");
String newDateStr = sdf.format(date);
System.out.println(newDateStr);

在上述代码中,我们直接创建了一个SimpleDateFormat对象,并使用它将Date类型的日期格式化成指定格式的字符串。输出结果为:

2022_01_01_09_00_00

这就是SimpleDateFormat的详细使用攻略和两个示例,希望能对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java中SimpleDateFormat日期格式转换详解及代码示例 - Python技术站

(0)
上一篇 2023年5月20日
下一篇 2023年5月20日

相关文章

  • java/jsp中 中文问题详解

    Java/JSP 中文问题详解 背景 在 Java/JSP 开发中,中文字符集编码问题经常会遇到。由于 Java 内部使用的是 UTF-16 编码,而 HTTP 协议传输数据时常使用的是 UTF-8 编码,所以在处理中文字符时,需要进行字符集编码转换。 常见问题 URL 参数传递问题 由于 HTTP 协议传输 URL 数据时使用的是 ASCII 编码,因此中…

    Java 2023年5月20日
    00
  • 教你用Java SpringBoot如何解决跨域

    教你用 Java Spring Boot 如何解决跨域 在本文中,我们将详细讲解如何使用 Java Spring Boot 解决跨域问题。我们将使用 Spring Boot 2.5.0 版本的源码进行分析。 什么是跨域? 跨域是指在浏览器中,当一个 Web 应用程序试图访问另一个域名下的资源时,浏览器会阻止这种行为。这是由于浏览器的同源策略所导致的。同源策略…

    Java 2023年5月15日
    00
  • Java反射(Class类,Class对象获取)

    Java反射机制指程序可以在运行时(程序运行时而不是在编译期间),获取或修改该程序在运行状态下的某个类的各种属性,方法和构造方法。Java反射机制在框架的设计和实现中使用广泛。 在Java中,反射机制主要通过Class类和Class对象来实现。Class类表示类的一个实例,每个类都有一个Class实例。Class对象是在运行时从类载入的数据类型,它保存着与类…

    Java 2023年5月26日
    00
  • 关于Java利用反射实现动态运行一行或多行代码

    Java反射是指通过运行时借助Java API获取对象信息的机制。反射允许我们在程序运行时动态获取类的相关信息、构造实例、调用方法、访问和修改字段属性等。在一些特殊的需求场景下,我们可以利用Java的反射机制来实现动态运行一行或多行代码。以下是具体实现步骤: 1. 获取指定类的Class对象 在Java中,所有的类都是对象,每个类都有一个Class对象。获取…

    Java 2023年5月26日
    00
  • 关于Maven依赖冲突解决之exclusions

    Maven是一种非常流行的构建工具,可以用来自动化构建、打包和管理Java项目中所需的依赖关系。但由于不同的依赖可能会有冲突,因此Maven提供了一种“exclusions”机制来解决这个问题。 1. 什么是exclusions 当一个项目依赖的其他项目中存在相同的依赖时,就可能会发生依赖冲突。例如,项目A依赖了项目B和项目C,而项目B和项目C都依赖了同一个…

    Java 2023年5月19日
    00
  • javaMybatis映射属性,高级映射详解

    Java Mybatis 映射属性,高级映射详解 概述 在 Java Mybatis 中, 映射属性是指将 Java 对象映射到数据库表的字段上。Mybatis 提供了多种映射方式,这篇攻略主要介绍 Mybatis 映射属性的基本用法和高级映射。 基本映射 在 Mybatis 的 mapper 文件中,我们可以使用 resultMap 标签来对返回对象进行映…

    Java 2023年6月1日
    00
  • Spring Boot 中使用@KafkaListener并发批量接收消息的完整代码

    下面我将详细讲解如何在Spring Boot中使用@KafkaListener实现并发批量接收消息的完整代码,包括以下内容: 引入依赖 在使用@KafkaListener接收消息之前,需要在Maven或Gradle构建文件中添加适当的依赖项。例如,使用Maven,可以添加以下依赖: <dependency> <groupId>org.…

    Java 2023年5月20日
    00
  • Maven 项目生成jar运行时提示“没有主清单属性”

    当我们使用Maven生成的jar包运行时,有时会遇到“没有主清单属性”的问题。这是因为在生成Jar包时,没有正确指定Main-Class。 以下是解决该问题的攻略: 第一步:确认pom.xml的配置 在Maven项目中,我们需要确保在pom.xml文件中指定了Main-Class属性,并且指向我们需要执行的程序入口。 <build> <pl…

    Java 2023年5月19日
    00
合作推广
合作推广
分享本页
返回顶部