首页 > 编程语言 >java8日期时间格式化DateTimeFormatter多个格式

java8日期时间格式化DateTimeFormatter多个格式

时间:2024-01-09 14:44:19浏览次数:42  
标签:格式化 MM dd yyyy 日期 DateTimeFormatter 格式 java8

原文地址:datetimeformatter.ofpattern multiple formats-掘金

DateTimeFormatter 是一个用于日期时间格式化和解析的类。使用 ofPattern 方法可以创建一个格式化器,该方法接受一个日期时间格式的字符串作为参数。

如果您需要在同一个 DateTimeFormatter 对象中支持多种不同的日期时间格式,可以使用 ofPattern 方法的重载形式,将多个格式字符串放在一个数组中作为参数。例如:

  java 复制代码
DateTimeFormatter formatter = DateTimeFormatter.ofPattern(
    "[yyyy-MM-dd'T'HH:mm:ss.SSS'Z'][yyyy-MM-dd'T'HH:mm:ss.SSS][yyyy-MM-dd'T'HH:mm:ss][yyyy-MM-dd]"
);

上面的代码中,DateTimeFormatter 对象 formatter 支持多种不同的日期时间格式,包括:

  • yyyy-MM-dd'T'HH:mm:ss.SSS'Z':带时区的完整日期时间格式,例如:2022-02-25T15:30:45.123Z。
  • yyyy-MM-dd'T'HH:mm:ss.SSS:不带时区的完整日期时间格式,例如:2022-02-25T15:30:45.123。
  • yyyy-MM-dd'T'HH:mm:ss:不带毫秒和时区的日期时间格式,例如:2022-02-25T15:30:45。
  • yyyy-MM-dd:只有日期的格式,例如:2022-02-25。

当您使用这个多格式的 DateTimeFormatter 对象格式化或解析日期时间时,DateTimeFormatter 会依次尝试使用数组中的格式字符串,直到找到与输入的日期时间匹配的格式为止。

这样,您就可以通过一个 DateTimeFormatter 对象支持多种不同的日期时间格式了。

 

其他参考文章:

java如何使用Scala在DateTimeFormatter中传递多个日期格式 - Java中文网

DateTimeFormatter匹配多种日期格式通用方法 - 简书

标签:格式化,MM,dd,yyyy,日期,DateTimeFormatter,格式,java8
From: https://www.cnblogs.com/dirgo/p/17954453

相关文章

  • PyCharm配置代码格式化工具Black
    一、pip安装blackpipinstallblack注意:一般安装后,black.exe目录会在python安装路径的Scripts目录下。默认为:C:\Users\xxxxx\AppData\Local\Programs\Python\Python311\Scripts\black.exe二、在PyCharm中配置BlackSettings-->Tools-->ExternalTools-->+配置信息如下......
  • java8中object转list
    Java8中Object转List的实现概述在Java8中,我们可以使用StreamAPI将一个Object对象转换为List集合。本文将介绍如何使用StreamAPI实现此功能,并提供相应的示例代码。实现步骤下面是实现"Java8中Object转List"的步骤,我们可以使用以下表格形式展示:步骤描述1创建一个Obj......
  • java8找集合中最小的
    Java8找集合中最小的简介在Java编程中,我们经常需要在一个集合中寻找最小的元素。在Java8中,我们可以使用StreamAPI来实现这个功能。StreamAPI是Java8中引入的一个强大的功能,它可以让我们以一种更简洁、更易读的方式处理集合数据。本文将介绍如何使用Java8的StreamAPI来找到一个......
  • Java8 原子类 AtomicInteger 源码阅读
    AtomicInteger 是用 CAS(Compre And Swap,乐观锁)构造的一个 原子类。1. CAS CAS(CompareandSwap)比较并替换,CAS是实现乐观锁的一个重要操作。CAS是一个硬件指令,保证是原子操作,Java中通过UnSafe来实现。详细可一下我的这篇博文:传送。CAS 的基本步骤:执行函数CAS(V,E,N......
  • java8 新特性(二)CompletableFuture类
    CompletableFuture是Java8中引入的一个新特性,它表示异步计算的结果。通过使用CompletableFuture,可以方便地处理异步计算,并能够在计算完成后执行回调函数。CompletableFuture是Java8中引入的一个功能强大的类,它实现了Future接口,并在此基础上进行了丰富的扩展,以简化异步编程的复......
  • 使用java8 将pdf转为tif文件并设定图片格式
    在工作中,遇到一个需要将pdf转为tif并将图片大小限制到30kb以内的需求。在网上看了一圈,也因为依赖版本等等踩了一些坑,为此记录下来学习的过程。`importcom.github.jaiimageio.impl.plugins.tiff.TIFFImageWriterSpi;importcom.github.jaiimageio.plugins.tiff.BaselineTIFFTagS......
  • 三、函数、时间格式化
    1.函数2.时间格式化  1.函数#不可变对象实例:数字、字符串、元组,如数字,变量赋值a=5后再赋值a=10,这里实际是新生成一个int值对象10,再让a指向它,而5被丢弃,不是改变a的值,相当于新生成了a。#可变对象实例:列表、集合、字典,如变量赋值la=[1,2,3,4]后再赋值la[2]=5......
  • MFC---路径格式化
    在路径字符串格式化时,通常需要使用双反斜杠\而不是单斜杠//。在文件路径中,Windows系统通常使用反斜杠\作为路径分隔符。问题出现问题原因问题解决......
  • 推荐给程序员的chrome扩展插件:gitzip for github下载单个GitHub仓库中的文件;json-hand
    推荐清单gitzipforgithub下载单个GitHub仓库中的文件双击文件,勾选文件前面的复选框,可以一次性选择多个文件json-handle格式化json......
  • Java8之函数式接口@FunctionalInterface和lambada表达式
    跟着孙哥学Spring,b站:https://www.bilibili.com/video/BV185411477k/?spm_id_from=333.337.search-card.all.click在Java中,函数式接口和Lambda表达式是一种常见的编程模式,主要用于简化代码和提高代码的可读性。函数式接口(FunctionalInterface)函数式接口是Java8中引入的一个......