[Ruby] Informations de base sur les classes Date, Heure et DateHeure

Classe de date

--Une classe qui gère les dates.

Exemple)Comment utiliser la classe Date


require "date"   #Obligatoire car il fait référence à un fichier externe et obtient la classe

#méthode d'aujourd'hui
  today = Date.today           #aujourd'hui
  today - 1                    #hier
  today.year                   #Année
  today.mon                    #Mois
  today.mday                   #journée
  today.wday                   #journée
  today.strftime('%a')         # "Sat"

#La date existe-t-elle?
Date.valid_date?(2020, 9, 5)   # true
Date.valid_date?(2020, 9, 31)  # false
Date::exist?(2001, 1, 31)      # 2451941(Julius revient le jour)
Date::exist?(2001, 1, 32)      # false

# Date::méthode new1(Jour Julius)
  #Jour Julius:1 janvier 4713 avant JC(Calendrier Julius)le midi(Heure moyenne de Greenwich)Nombre de jours écoulés lorsque
julius = Date::exist?(2001, 1, 31) #Nombre de jours écoulés(2451941)
Date::new1(julius).to_s      # "2001-01-31"

# eap?Méthode(Est-ce une année humide?? )
Date.new(2000).leap?   # true
Date.new(2001).leap?   # false

#méthode d'analyse
date = Date.parse("2020-09-05")  #Créer un objet Date basé sur des arguments
Date.parse(str_time).to_time     #Convertir du type de date au type d'heure(* L'heure est 00:00:Devenez 00)

#nouvelle méthode(Utilisé pour créer une instance d'une classe)
  input = Date.new(2020, 9, 5)   #Créer un objet Date basé sur des arguments
  input += 10                    #Obtenez 10 jours plus tard
  input - date                   # 10
  Date.new(2020, 9, -1)          #Si le troisième argument est négatif, à compter du dernier jour(※ -1 est le dernier jour)。

Classe d'heure (date et heure)

--Classe qui gère la date et l'heure à l'heure UNIX

Exemple)Comment utiliser la classe Time


require "time"

now = Time.current               #Heure actuelle
Time.mktime(2000, 1, 1).yday     # 2000/1/Jours à partir de 1
Time.parse(str_time).to_date     #Conversion du type d'heure en type de date

today = Time.now()               #Heure actuelle( 2020-06-17 19:30:02 +0000 )
  today.year                     #Année(2020)
  today.month                    #Mois(6)
  today.day                      #journée(17)

  now.yesterday                #hier
  now.tomorrow                 #le prochain jour
  now.ago(3.days)              #● il y a jours
  now.prev_day(3)
  now.since(3.days)            #● jours plus tard
  now.next_day(3)

  now.beginning_of_week        #Premier de la semaine
  now.end_of_week              #Fin de cette semaine
  now.prev_week(:monday)       #Lundi dernier
  now.next_week(:monday)       #Lundi prochain

  now.prev_month               #le mois dernier
  now.next_month               #Le mois prochain
  now.ago(3.month)             #● il y a des mois
  now.prev_month(3)
  now.since(3.month)           #● des mois plus tard
  now.next_month(3)
  now.beginning_of_month       #Début du mois
  now.end_of_month             #Fin du mois

  now.prev_year                #Année précédente
  now.next_year                #l'année suivante
  now.ago(3.years)             #● il y a des années
  now.prev_year(3)
  now.since(3.years)           #● Des années plus tard
  now.next_year(3)

#méthode d'analyse
Time.parse("2020-09-05 12:22:50")
Time.parse("2020/09/05 12:22:50")
Time.parse("2020-09/05 12:22:50")
Time.parse("20200905 122250")
Time.parse("20200905122250")
Time.parse("2020/09/05 12")         # 2020-09-05 12:00:00 +0900
Time.parse("2020/09/05 12:22")      # 2020-09-05 12:22:00 +0900
  #Peut être changé
  Time.parse("2020.06.17 12:00:00") do |year|
    if year < 100
      if year >= 69
        year + 1900
      else
        year + 2000
      end
      year
    end
  end

#méthode gm, méthode utc(Accord temps du monde)
Time.gm(2001, 5, 20, 23, 59, 59)    # Sun May 20 23:59:59 UTC 2001
#méthode locale, méthode mktime(Heure locale)
Time.local(2001, 5, 20, 23, 59, 59) # Sun May 20 23:59:59 JST 2001

#Chaîne(14 chiffres)Conversion en
now.to_s                        # '20200905122250'
now.insert(8, ' ')              # '20200905 122250' (Insérez un espace dans le 8e chiffre)

Classe DateTime

--Une classe qui gère les dates et les heures (une sous-classe de Date).

Exemple)Comment utiliser la classe DateTime


require "date"

date = DateTime.now    #Date et heure actuelles(2020-09-05 17:08:37 +0900)
DateTime.now - 1       #hier

input = DateTime.new(2020, 9, 5, 17, 8, 37)
date = DateTime.parse('2020-09-05T17:08:37')
  date += 10
  date - input                 # 10
  date.year                    # 2020
  date.strftime('%a')          # "Sat"
  date.strftime("%Y année%m mois%jour j") #5 septembre 2020

méthode strftime

Notation sens Exemple
%A journée Sunday,Monday,..
%a journée(Nom abrégé) Sun,Mon,..
%B Mois January,February,..
%b Mois(Nom abrégé) Jan, Feb,..
%c Date et l'heure
%d journée 01-31
%H temps(24h) 00-23
%I temps(12h) 01-12
%j Date totale de l'année 001-366
%M Minutes 00-59
%m Mois(Nombres) 01-12
%p Matin ou après-midi AM,PM
%S Secondes 00-60(※60はうるうSecondes)
%U la semaine(Nombres)* À partir du dimanche 00-53
%W la semaine(Nombres)* À partir du lundi 00-53
%w journée(Nombres)※日journéeが0 0-6
%X Heures du jour 09
%x Date 09/20/20
%Y UN D 2020
%y UN D(2 derniers chiffres) 00-99
%Z Fuseau horaire JST
%% Caractère de pourcentage

Recommended Posts

[Ruby] Informations de base sur les classes Date, Heure et DateHeure
Bases de Ruby
Explication des objets Ruby Time et Date
Bases de Ruby
[Ruby] Résumé des définitions de classe. Maîtrisez les bases.
À propos du type de date / heure de la classe d'entité de Doma2
Utilisation de la classe Date
[Java] Opérations de date / heure
[Rails] Précautions lors de la comparaison de la date et de l'heure avec DateTime
Principes de base de Ruby on Rails
[Ruby] Imbrication de classes, héritage et principes de base de soi
Traitement de la date et de l'heure en Ruby. Utilisez correctement la date et l'heure.
Qu'est-ce que la classe LocalDateTime? [Java débutant] -Date et classe d'heure-
[GCD] Principes de base de la classe DispatchQueue
Écrire l'héritage de classe dans Ruby
Que sont les méthodes de classe Ruby?
[Ruby] Méthodes de classe, méthodes d'instance, etc.
[Notions de base Java] Qu'est-ce que la classe?
Quelle classe doit être utilisée pour obtenir la date et l'heure dans l'application Rails (Time, DateTime, TimeWithZone)