66 votes

convertir une chaîne en format date / heure spécifique?

Chaîne

 "2011-05-19 10:30:14"
 

À

 Thu May 19 10:30:14 UTC 2011
 

Comment puis-je convertir une chaîne spécifique au format Date?

130voto

Pär Wieslander Points 11258
 require 'date'

date = DateTime.parse("2011-05-19 10:30:14")
formatted_date = date.strftime('%a %b %d %H:%M:%S %Z %Y')
 

Voir strftime () pour plus d'informations sur le formatage des dates.

35voto

Dipil Points 1097

"2011-05-19 10:30:14".to_time

17voto

Rubyist Points 2567

Pas besoin d'appliquer quoi que ce soit. Ajoutez simplement ce code à la fin de la variable à laquelle la date est attribuée. Par exemple

    @todaydate = "2011-05-19 10:30:14"
   @todaytime.to_time.strftime('%a %b %d %H:%M:%S %Z %Y')
 

Vous obtiendrez le bon format comme bon vous semble. Vous pouvez le vérifier sur la console Rails

 Loading development environment (Rails 3.0.4)
ruby-1.9.2-p136 :001 > todaytime = "2011-05-19 10:30:14"
 => "2011-05-19 10:30:14" 
ruby-1.9.2-p136 :002 > todaytime
 => "2011-05-19 10:30:14" 
ruby-1.9.2-p136 :003 > todaytime.to_time
 => 2011-05-19 10:30:14 UTC
ruby-1.9.2-p136 :008 > todaytime.to_time.strftime('%a %b %d %H:%M:%S %Z %Y')
 => "Thu May 19 10:30:14 UTC 2011"
 

Bonne chance !!!

3voto

arnep Points 2737

Utilisez DATE_FORMAT partir des conversions de date :

Dans votre initialiseur:

 DateTime::DATE_FORMATS[:my_date_format] = "%a %b %d %H:%M:%S %Z %Y"
 

A votre avis:

 date = DateTime.parse("2011-05-19 10:30:14")
date.to_formatted_s(:my_date_format)
date.to_s(:my_date_format) 
 

3voto

krunal shah Points 6506
  <%= string_to_datetime("2011-05-19 10:30:14") %>

  def string_to_datetime(string,format="%Y-%m-%d %H:%M:%S")
    DateTime.strptime(string, format).to_time unless string.blank?
  end

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X