Konvertere en dato til en streng

Rust:
Konvertere en dato til en streng

Slik gjør du:

use chrono::{NaiveDate, Datelike, Local};

fn main() {
    let local_date = Local::today();
    let date_string = local_date.format("%Y-%m-%d").to_string();
    println!("Dagens dato som streng: {}", date_string);

    let naive_date = NaiveDate::from_ymd(2023, 3, 14);
    let naive_date_string = naive_date.format("%A %d %B %Y").to_string();
    println!("Valgt dato som streng: {}", naive_date_string);
}

Output:

Dagens dato som streng: 2023-03-22
Valgt dato som streng: Tuesday 14 March 2023

Dypdykk

Før biblioteker som chrono og innebygde funksjoner, måtte Rust-programmerere håndtere datoer manuelt, ofte ved å lage egne funksjoner for format og validering. chrono er idag “go-to” biblioteket for dato- og tidsoperasjoner i Rust. Når vi konverterer datoer til strenger, lar chrono oss bruke forhåndsdefinerte formatstrenger så vel som egendefinerte mønstre. Alternativer inkluderer bruke standardbiblioteket for enklere oppgaver, men det har begrenset funksjonalitet sammenlignet med chrono.

Implementasjonsdetaljer avhenger ofte av ‘formatereren’ vi bruker; i chrono, brukes format-metoden som tar en formatstreng. Denne strengen følger formateringsdirektiver som spesifisert i strftime-stilen kjent fra C-programmering. En annen viktig detalj er tidszonesensitivitet: Local::today() gir dagens dato i lokal tidssone, mens NaiveDate representerer en “naiv” dato uten tidssoneinformasjon.

Se også