Comment convertir "11h00" et "22h00" et "22:00"? Y a-t-il un moyen simple en utilisant les classes de date et d'heure? P>
4 Réponses :
Vous dites que vous voulez que vous voulez 11h et 22 heures, puis la capacité de 11h00 et 22h00 ou voulez-vous savoir comment montrer 11:00 et 22h00 au lieu de 11h et 22h00?
Si sa seconde Question ici: P>
% H - heure de la journée, horloge de 24 heures (00 à 23). Code> p> #!/usr/bin/ruby -w
time = Time.new
timeSwitch = 1
if (timeSwitch == 1)
puts time.strftime("%H:%M")
else
puts time.strftime("%I:%M")
end
J'ai vu le% H et% I des drapeaux dans la Strftime (). Je n'essaie pas de formater l'heure actuelle. J'ai une chaîne avec '22h' et je voudrais le convertir en '22: 00 '. Merci pour votre réponse rapide.
Juste faire Time_string + 12 = convertiTime donc TIME = 10 Met Time + 12 = 22 Code>
Votre question n'est pas claire, mais il semble que vous ayez une chaîne "10h00", et vous devez (1) la capturer comme une heure et (2) représenter ce temps au format 24 heures. Je le ferais comme ça. Premièrement, retourne "22:00" p> p> p> p> P> GEM Installez chronique code>, puis écrivez un script comme celui-ci:
La classe de temps n'a pas de méthode d'analyse, mais DateTime a.
require 'date'
DateTime.parse("11pm").strftime("%H:%M") #=> "23:00"
Parfait! Je n'ai fait à tort DateTime.parse ("11h"). To_time.strfTime ("% h:% m") avant. Merci!
Je voudrais d'abord analyser la chaîne avec TIME # STRIPTIME CODE>, puis la sortie avec TIME # Strftime code>. Cela garantit également un contrôle strict avec votre format d'origine. require 'time'
Time.strptime("10pm", "%I%P").strftime("%H:%M")
=> "22:00"
+1 pour l'heure "exigent" ", qui ajoute également une méthode d'analyse à la classe d'appel (si la strictisme n'est pas souhaitable).