Elixir 无外部依赖项的Exlir/EXTO中的日期时间
我有一个Elixir 无外部依赖项的Exlir/EXTO中的日期时间,elixir,phoenix-framework,ecto,Elixir,Phoenix Framework,Ecto,我有一个DateTime格式: {{2017, 2, 2}, {14, 43, 50, 0}} 我想将其转换为“2017年2月2日”或“2017年2月2日”或“2017年2月2日”,而不使用Timex或任何其他依赖项,除非需要exto.DateTime。我如何才能做到这一点?使用 使用 进一步修改: "2017-02-02" |> String.split("-") |> Enum.reverse |> Enum.join("/") # => "02/02/201
DateTime
格式:
{{2017, 2, 2}, {14, 43, 50, 0}}
我想将其转换为“2017年2月2日”或“2017年2月2日”或“2017年2月2日”,而不使用Timex
或任何其他依赖项,除非需要exto.DateTime
。我如何才能做到这一点?使用
使用
进一步修改:
"2017-02-02"
|> String.split("-")
|> Enum.reverse
|> Enum.join("/")
# => "02/02/2017"
对于一个简单的情况,这些可能会起作用,但我郑重建议对更复杂的情况使用 连续几个月 用法:
MyDate.to_string({{2017, 2, 2}, {14, 43, 50, 0}})
# => "2 February 2017"
对于一个简单的情况,这可能会起作用-但我郑重建议对更复杂的情况使用 “二月”或“二月”怎么样?看看我的另一个答案。
"2017-02-02"
|> String.split("-")
|> Enum.reverse
|> Enum.join("/")
# => "02/02/2017"
defmodule MyDate do
@months ~w(January February March April May June July August September October November December)
def to_string({{y, m, d}, _time} = datetime) do
"#{d} #{Enum.at(@months, m - 1)} #{y}"
end
end
MyDate.to_string({{2017, 2, 2}, {14, 43, 50, 0}})
# => "2 February 2017"