将日期长度值转换为当前时区值



我有一个日期作为长值,我想用单词显示日期格式,这取决于国家时区。请帮我转换一下。

看看java.text.DateFormat类。它提供了几个如何输出当前数据和时间的选项。

例如,以下代码以en_UK区域设置的长格式选项打印当前日期和时间:DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG, Locale.UK).format(new Date());

打印:23 January 2012 08:17:36 CET

要显示任何日期,只需将长值传递给Date对象的构造函数即可。DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG, Locale.UK).format(new Date(<your long value here>));

I have a date as long value

您需要理解日期,因为long值是自Epoch以来时间的绝对值(UTC),单位为毫秒,即"1970年1月1日00:00:00"。这个值中没有嵌入时区信息。现在,如果你想在当前本地时区中显示这个时间,只需执行以下操作:

Date dt = new Date(1327303085000l);
System.out.printf("Date: %s%n", dt);

它打印:

Date: Mon Jan 23 02:18:05 EST 2012

请注意,当它打印日期时,它会自动打印出我当前的时区。

但是如果您想要自定义的formattng来显示您的日期,那么您可以查看Java中的DateFormat类。

相关内容

  • 没有找到相关文章

最新更新