Elixir:
Convertendo uma data em uma string
Como Fazer:
defmodule DateConverter do
def to_string(date) do
date
|> Date.to_iso8601()
end
end
# Uso:
IO.puts DateConverter.to_string(~D[2023-04-12])
Saída de exemplo:
"2023-04-12"
Aprofundando
Conversão de datas para strings não é novidade. Em Elixir, a capacidade de manipular datas veio após algumas versões, sendo refinada ao longo do tempo. Antes de ter módulos específicos como Date
, programadores dependiam de bibliotecas externas ou manipulações manuais de strings.
Alternativamente, além de Date.to_iso8601/1
, que converte para o padrão ISO 8601, Elixir também oferece outras funções como Date.to_string/1
, que foi preterida, mas ainda pode ser encontrada em código antigo.
Os detalhes de implementação frequentemente dependem do que se pretende com o formato final da data. Por exemplo, para registrar em logs pode-se querer um formato completo com tempo até milissegundos, enquanto para exibir para usuários finais prefere-se algo mais legível, talvez até regionalizado.
Veja Também
- Elixir Date – Documentação oficial dos módulos de data em Elixir.
- Elixir DateTime – Para uma manipulação mais completa de datas e tempos.
- Elixir Timex – Uma biblioteca completa para trabalhar com datas e horas em Elixir, caso precise de funções mais avançadas.