Swift:
Analysering av en dato fra en streng
Hvordan:
Bruke Foundation’s DateFormatter
Swifts standardbibliotek, Foundation, tilbyr DateFormatter
for å konvertere strenger til Date
-objekter og omvendt. For å analysere en dato fra en streng, spesifiserer du datoformatet som matcher strengen, deretter bruker du formatteren til å analysere det.
import Foundation
let dateString = "2023-04-30"
let formatter = DateFormatter()
formatter.dateFormat = "yyyy-MM-dd"
if let date = formatter.date(from: dateString) {
print("Analysert dato: \(date)")
} else {
print("Klarte ikke å analysere dato")
}
// Eksempelutdata: Analysert dato: 2023-04-29 22:00:00 +0000
Merk at utdata kan variere basert på din tidssone.
Bruke ISO8601DateFormatter
For ISO 8601 datoformater, tilbyr Swift en spesialisert formatter, ISO8601DateFormatter
, som forenkler analyseringsprosessen.
import Foundation
let dateString = "2023-04-30T15:00:00+00:00"
let isoFormatter = ISO8601DateFormatter()
if let date = isoFormatter.date(from: dateString) {
print("Analysert ISO8601 dato: \(date)")
} else {
print("Klarte ikke å analysere ISO8601 dato")
}
// Eksempelutdata: Analysert ISO8601 dato: 2023-04-30 15:00:00 +0000
Bruke et tredjepartsbibliotek: SwiftDate
Selv om Swift tilbyr robuste verktøy for datumsanalyse, tilbyr tredjepartsbiblioteker som SwiftDate enda mer fleksibilitet og bekvemmelighet. Etter å ha lagt til SwiftDate i prosjektet ditt, blir parsing så enkel som:
import SwiftDate
let dateString = "April 30, 2023"
if let date = dateString.toDate("MMMM dd, yyyy") {
print("Analysert dato med SwiftDate: \(date)")
} else {
print("Klarte ikke å analysere dato med SwiftDate")
}
// Eksempelutdata: Analysert dato med SwiftDate: 2023-04-30 00:00:00 +0000
SwiftDate forenkler parsing med naturlig språk og et bredt utvalg av datoformater, noe som gjør det til en kraftig tillegg til ditt Swift programmeringsverktøysett.