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

JavaSimpleDateFormat("yyyy-MM-dd'T'HH: mm: ss'Z'")将时区作为IST

晁英彦
2023-03-14

我将teformat构造函数简化为

SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'")

我正在解析字符串“2013-09-29T18:46:19Z”。

我读到这里Z代表GMT/UTC时区。但是当我在控制台上打印这个日期时,它会为返回的日期打印IST timezne。

现在我的问题是我的输出是对还是错?

共有3个答案

诸葛利
2023-03-14

从ISO 8601字符串到Java日期对象

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
sdf.parse("2013-09-29T18:46:19Z"); //prints-> Mon Sep 30 02:46:19 CST 2013

如果不设置TimeZone.getTimeZone(“GMT”),则它将输出Sun Sep 29 18:46:19 CST 2013

从Java日期对象到ISO 8601字符串

要将Date对象转换为ISO 8601 Standard(yyyyy-MM-dd'T'HH: mm: ss'Z'),请使用以下代码

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'", Locale.US);
sdf.setTimeZone(TimeZone.getTimeZone("GMT"));           
System.out.println(sdf.format(new Date())); //-prints-> 2015-01-22T03:23:26Z

还要注意的是,在Zyyyy-MM-dd'T'HH:MM:ssZ处没有打印2015-01-22T03:41:02 0000

黄景胜
2023-03-14

'T''Z'在这里被认为是常量。您需要传递不带引号的Z。此外,您需要在输入字符串中指定时区。

示例:2013-09-29T18:46:19-0700格式为"yyyy-MM-dd'T'HH: mm: ssZ"

蓝鸿哲
2023-03-14

您没有设置时区,只是在日期/时间的末尾添加了一个Z,因此它看起来像GMT日期/时间,但这不会更改值。

将时区设置为GMT,它将是正确的。

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
 类似资料:
  • 问题内容: 我有一个格式。我希望它采用以下格式 以下是我尝试进行此转换的示例: 我得到的输出仍然不是格式。 请让我知道如何格式化从到 问题答案: 是自Unix纪元(1970年1月1日UTC:00:00)以来的毫秒数的容器。 它没有格式的概念。 输出…

  • 我想将日期从07/02/2019转换为2019年7月07日。我的输入值是07/02/2019我想与目标值2019年7月07日进行比较.....请帮助我... public static void main(string[]args)引发ParseException{ 输出:Mon Jul 01 00:00:00 IST 2019这不是我的期望值

  • 问题内容: 有人可以让我知道吗,如何在Java 中将日期格式转换为日期, 在输入和输出日期中都应为Strings。 我用过apache,但是在输出中没有毫秒数。 问题答案: 您还可以在Java 8中使用更新的Time API ,类似… 哪个输出… 这使您对管理时区负有更多责任,通常这可能是一个更好的解决方案 而且因为在Java 8 API中的时区之间进行转换使我很头疼(缺乏经验:P) 哪个输出…

  • 我在将日历对象转换为可读字符串时遇到了一个大问题。 实际上,我使用df.format(cal.getTime())来获取格式化的字符串,这不是很好,因为我从cal.getTime()获取的Date对象不受时区的影响。 请回绝任何评论,如“使用joda时间”。。。 我正在寻找一种将日历对象直接转换为字符串的解决方案。 这些是我的格式化程序: 如果你们尝试一下这段代码,你会发现Date对象不受时区的影

  • 问题内容: 我希望将日期格式更改为MM / DD / YYYY,当前为YYYY / MM / DD。 我尝试进行研究,但具有讽刺意味的是,情况总是相反。现在有人可能会说将其向后尝试从那里开始尝试,但没有成功。 我上课的所有事情: 顺便说一下,我不熟悉的简单日期格式类和日期格式类,并且尝试实现它们均未成功。 问题答案: 只需使用即可转换为。无需麻烦的API。 而是在整个代码中使用此对象。每当您需要将