Päivämäärän jäsennys merkkijonosta

Swift:
Päivämäärän jäsennys merkkijonosta

Kuinka:

Käyttäen Foundationin DateFormatteria

Swiftin vakio kirjasto, Foundation, tarjoaa DateFormatterin merkkijonojen muuntamiseen Date-olioiksi ja päinvastoin. Päivämäärän jäsentämiseksi merkkijonosta määrität merkkijonoon sopivan päivämäärämuodon ja käytät sitten muotoilijaa sen jäsentämiseen.

import Foundation

let dateString = "2023-04-30"
let formatter = DateFormatter()
formatter.dateFormat = "yyyy-MM-dd"
if let date = formatter.date(from: dateString) {
    print("Jäsennetty päivämäärä: \(date)")
} else {
    print("Päivämäärän jäsentäminen epäonnistui")
}
// Esimerkkituloste: Jäsennetty päivämäärä: 2023-04-29 22:00:00 +0000

Huomaa, että tuloste voi vaihdella aikavyöhykkeesi mukaan.

Käyttäen ISO8601DateFormatteria

ISO 8601 päivämäärämuodoille Swift tarjoaa erikoistuneen muotoilijan, ISO8601DateFormatterin, joka yksinkertaistaa jäsentämisprosessia.

import Foundation

let dateString = "2023-04-30T15:00:00+00:00"
let isoFormatter = ISO8601DateFormatter()
if let date = isoFormatter.date(from: dateString) {
    print("Jäsennetty ISO8601 päivämäärä: \(date)")
} else {
    print("ISO8601 päivämäärän jäsentäminen epäonnistui")
}
// Esimerkkituloste: Jäsennetty ISO8601 päivämäärä: 2023-04-30 15:00:00 +0000

Käyttäen kolmannen osapuolen kirjastoa: SwiftDate

Vaikka Swift tarjoaa vankkoja työkaluja päivämäärän jäsentämiseen, kolmannen osapuolen kirjastot kuten SwiftDate tarjoavat vielä enemmän joustavuutta ja mukavuutta. Lisättyäsi SwiftDaten projektiisi, jäsentäminen muuttuu yksinkertaiseksi:

import SwiftDate

let dateString = "huhtikuu 30, 2023"
if let date = dateString.toDate("MMMM dd, yyyy") {
    print("Jäsennetty päivämäärä SwiftDaten avulla: \(date)")
} else {
    print("Päivämäärän jäsentäminen SwiftDaten avulla epäonnistui")
}
// Esimerkkituloste: Jäsennetty päivämäärä SwiftDaten avulla: 2023-04-30 00:00:00 +0000

SwiftDate yksinkertaistaa jäsentämistä luonnollisen kielen ja laajan päivämäärämuotojen valikoiman avulla, tehden siitä voimakkaan lisäyksen Swift-ohjelmointityökalupakkiisi.