本文介绍了如何在elixir中以ISO 8601格式生成当前日期?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要以与以下相同的格式生成当前时间的字符串: 20130524T000000Z

I need to generate a string with the current time in the same format as the following: 20130524T000000Z

该示例是 Fri的时间戳记,2013年5月24日格林尼治标准时间$

我该怎么办那?有没有外部软件包的方法?

How would I do that? Is there a way to do it without external packages?

推荐答案

2016年7月18日更新

Elixir 及更高版本对此提供了本地支持:

Elixir 1.3 and up has support for this natively:

iex> DateTime.utc_now() |> DateTime.to_iso8601()
"2016-07-18T21:49:08.132428Z"

原始版本2015-12-01 (已在2016-07-18中添加了版本差异,谢谢@sebastian_k)

如果您不介意使用外部库,则可以使用出色的库:

You could use the excellent timex library if you didn't mind using an external library:

()

iex> Timex.Date.local |> Timex.DateFormat.format("{ISOz}")
{:ok, "2015-12-01T09:40:44.716Z"}

()

iex> Timex.DateTime.local() |> Timex.format("{ISOz}")
{:ok, "2015-12-01T09:40:44.716Z"}

()

iex> Timex.now() |> Timex.format("{ISO:Extended:Z}")
{:ok, "2015-12-01T09:40:44.716417ZZ"}

这篇关于如何在elixir中以ISO 8601格式生成当前日期?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-20 22:49