当前位置: 首页 > 知识库问答 >
问题:

将字符串日期转换为ISO格式日期[重复]

禄奇希
2023-03-14

我需要将一些字符串日期转换为另一种格式的字符串日期

String current = "Tue Apr 16 10:59:11 EDT 2019";

我想按照“yyyy-MM-dd'T'HH:MM:ss.SSSXX”模式获得ISO-8601格式的结果日期字符串

你能帮我实现这个吗?

共有3个答案

慕健
2023-03-14

Java的时间类都没有完全实现ISO 8601,但是您可以尝试使用Java8:

ZonedDateTime zp = ZonedDateTime.parse(string);
Date date = Date.from(zp.toInstant());
SimpleDateFormat dt1 = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSXX");
System.out.println(dt1.format(date));
慕凡
2023-03-14

java中有一个SimpleDataFormat,其中有一个解析方法

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");

String dateString = format.format( new Date()   );
Date   date       = format.parse ( "2009-12-31" );      
薛扬
2023-03-14

使用Java8 DateTime API,您可以执行以下操作:

     //your input
     String date = "Tue Apr 16 10:59:11 EDT 2019";
     //create new formatter for parsing your input
     DateTimeFormatter formatter = DateTimeFormatter.ofPattern("EEE MMM d HH:mm:ss zzz yyyy", Locale.ENGLISH);
     //create new zonedDateTime from parsing an input with provided formatter
     ZonedDateTime zonedDateTime = ZonedDateTime.parse(date,formatter);

以您自己的格式获取:

     //format your zonedDateTime with a new provided pattern
     String test = zonedDateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss.SSSXX"));
     //print it
     System.out.println(test);
 类似资料:
  • 我有Excel数据,并尝试使用Talend Big data for Open Studio将数据插入MongoDB。这是我的工作, 在excel表单中,我有一个日期值列,格式为7/13/2017(MM/DD/YYYY)作为字符串类型,我正在尝试将该列值作为ISO格式ISODate(“2017-07-13T00:00:00.000Z”)插入MongoDB中。

  • 我刚到爪哇。Postgres db包含日期的格式为。我需要转换为。 我已经试过了,但是显示的结果是错误的

  • 我在presto上,把日期格式化为varchar,看起来像- 我如何转换这个?

  • 问题内容: 我想要这种格式 问题答案: 您需要先 解析 日期字符串(使用方法),才能 使用与格式匹配的格式获取对象。 然后使用所需的格式来 格式化 Date对象(Use 方法)以获取字符串。 输出:- 第一种格式是RFC 822 TimeZone与您的日期字符串匹配。有关在日期格式中使用的其他各种选项,请参见。

  • 我有这段代码,在这里我试图将日期字符串从一种格式转换为另一种格式,最后我想再次使用日期对象。

  • 问题内容: 我正在使用代码将字符串格式化为日期 但是,如何将日期从格式转换为格式? 问题答案: 使用SimpleDateFormat#format(Date):