Heim > Backend-Entwicklung > C++ > Wie analysiert man Datumszeichenfolgen in zeitliche C-11-Werte?

Wie analysiert man Datumszeichenfolgen in zeitliche C-11-Werte?

Linda Hamilton
Freigeben: 2024-11-29 17:12:15
Original
196 Leute haben es durchsucht

How to Parse Date Strings into C  11 Temporal Values?

Datumszeichenfolgen in C 11-Zeitwerte analysieren

Datumszeichenfolgenanalyse analysieren

Gegeben ist eine historische Datumszeichenfolge im Format „Do, 9. Januar, 12:35 Uhr“. :34 2014“, das Ziel besteht darin, es in ein geeignetes C zu analysieren Darstellung.

C 11 std::chrono-Ansatz

Für den C 11 std::chrono-Namespace kann eine Kombination aus der Funktion std::strptime und std::chrono::system_clock sein genutzt.

std::tm tm = {};
std::stringstream ss("Jan 9 2014 12:35:34");
ss >> std::get_time(&tm, "%b %d %Y %H:%M:%S");
auto tp = std::chrono::system_clock::from_time_t(std::mktime(&tm));
Nach dem Login kopieren

Beachten Sie, dass std::get_time in GCC vor der Version nicht implementiert ist 5.

Alternative Option

Ein alternativer Ansatz ist die Verwendung der strptime-Funktion:

std::tm tm = {};
strptime("Thu Jan 9 2014 12:35:34", "%a %b %d %Y %H:%M:%S", &tm);
auto tp = std::chrono::system_clock::from_time_t(std::mktime(&tm));
Nach dem Login kopieren

Dauerberechnung

Sobald die Datumszeichenfolge analysiert wurde Als zeitlicher Wert kann die Differenz zwischen der aktuellen Zeit und der analysierten Zeit mit std::chrono::duration berechnet werden. Diese Dauer bietet Zugriff auf die Anzahl der verstrichenen Sekunden, Minuten, Stunden und Tage.

Das obige ist der detaillierte Inhalt vonWie analysiert man Datumszeichenfolgen in zeitliche C-11-Werte?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage