Beispiel)Verwendung der Date-Klasse
require "date" #Erforderlich, da es sich auf eine externe Datei bezieht und die Klasse erhält
#heutige Methode
today = Date.today #heute
today - 1 #gestern
today.year #Jahr
today.mon #Mond
today.mday #Tag
today.wday #Tag
today.strftime('%a') # "Sat"
#Existiert das Datum?
Date.valid_date?(2020, 9, 5) # true
Date.valid_date?(2020, 9, 31) # false
Date::exist?(2001, 1, 31) # 2451941(Julius kehrt den Tag zurück)
Date::exist?(2001, 1, 32) # false
# Date::new1 Methode(Julius Tag)
#Julius Tag:1. Januar 4713 v(Julius Kalender)Mittag(Greenwich durchschnittliche Zeit)Anzahl der Tage, die vergangen sind, als
julius = Date::exist?(2001, 1, 31) #Anzahl der verstrichenen Tage(2451941)
Date::new1(julius).to_s # "2001-01-31"
# eap?Methode(Ist es ein feuchtes Jahr?? )
Date.new(2000).leap? # true
Date.new(2001).leap? # false
#Analysemethode
date = Date.parse("2020-09-05") #Erstellen Sie ein Datumsobjekt basierend auf Argumenten
Date.parse(str_time).to_time #Vom Datums- zum Uhrzeittyp konvertieren(* Die Zeit ist 00:00:00 werden)
#neue Methode(Wird verwendet, um eine Instanz einer Klasse zu erstellen)
input = Date.new(2020, 9, 5) #Erstellen Sie ein Datumsobjekt basierend auf Argumenten
input += 10 #Holen Sie sich 10 Tage später
input - date # 10
Date.new(2020, 9, -1) #Wenn das dritte Argument negativ ist, wird vom letzten Tag an gezählt(※ -1 ist der letzte Tag)。
--Klasse, die Datum und Uhrzeit in UNIX-Zeit behandelt
Beispiel)Verwendung der Zeitklasse
require "time"
now = Time.current #Aktuelle Uhrzeit
Time.mktime(2000, 1, 1).yday # 2000/1/Tage ab 1
Time.parse(str_time).to_date #Vom Zeittyp in den Datumstyp konvertieren
today = Time.now() #Aktuelle Uhrzeit( 2020-06-17 19:30:02 +0000 )
today.year #Jahr(2020)
today.month #Mond(6)
today.day #Tag(17)
now.yesterday #gestern
now.tomorrow #nächster Tag
now.ago(3.days) #● vor Tagen
now.prev_day(3)
now.since(3.days) #● Tage später
now.next_day(3)
now.beginning_of_week #Erster der Woche
now.end_of_week #Ende dieser Woche
now.prev_week(:monday) #Letzten Montag
now.next_week(:monday) #Am kommenden Montag
now.prev_month #Im vergangenen Monat
now.next_month #Nächsten Monat
now.ago(3.month) #● vor Monaten
now.prev_month(3)
now.since(3.month) #● Monate später
now.next_month(3)
now.beginning_of_month #Anfang des Monats
now.end_of_month #Ende des Monats
now.prev_year #Vorheriges Jahr
now.next_year #nächstes Jahr
now.ago(3.years) #● vor Jahren
now.prev_year(3)
now.since(3.years) #● Jahre später
now.next_year(3)
#Analysemethode
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
#Kann gewechselt werden
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
#gm Methode, utc Methode(Vereinbarung Weltzeit)
Time.gm(2001, 5, 20, 23, 59, 59) # Sun May 20 23:59:59 UTC 2001
#lokale Methode, mktime-Methode(Ortszeit)
Time.local(2001, 5, 20, 23, 59, 59) # Sun May 20 23:59:59 JST 2001
#String(14 Ziffern)Umstellung auf
now.to_s # '20200905122250'
now.insert(8, ' ') # '20200905 122250' (Fügen Sie ein Leerzeichen in die 8. Ziffer ein)
Beispiel)Verwendung der DateTime-Klasse
require "date"
date = DateTime.now #Aktuelles Datum und Uhrzeit(2020-09-05 17:08:37 +0900)
DateTime.now - 1 #gestern
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 Jahr%m Monat%d Tag") #5. September 2020
Notation | Bedeutung | Beispiel |
---|---|---|
%A | Tag | Sunday,Monday,.. |
%a | Tag(Kurzbezeichnung) | Sun,Mon,.. |
%B | Mond | January,February,.. |
%b | Mond(Kurzbezeichnung) | Jan, Feb,.. |
%c | Datum (und Uhrzeit | |
%d | Tag | 01-31 |
%H | Zeit(24h) | 00-23 |
%I | Zeit(12h) | 01-12 |
%j | Gesamtdatum des Jahres | 001-366 |
%M | Protokoll | 00-59 |
%m | Mond(Zahlen) | 01-12 |
%p | Morgen oder Nachmittag | AM,PM |
%S | Sekunden | 00-60(※60はうるうSekunden) |
%U | Woche(Zahlen)* Beginn am Sonntag | 00-53 |
%W | Woche(Zahlen)* Ab Montag | 00-53 |
%w | Tag(Zahlen)※日Tagが0 | 0-6 |
%X | Tageszeiten | 09 |
%x | Datum | 09/20/20 |
%Y | ANZEIGE | 2020 |
%y | ANZEIGE(Letzte 2 Ziffern) | 00-99 |
%Z | Zeitzone | JST |
%% | Prozentzeichen |
Recommended Posts