0Pricing
Swift Academy · Lekcja

Formatowanie dat

Wyświetlanie dat za pomocą nowoczesnego API formatowania.

Formatowanie dat to bezpłatna lekcja Swift Academy na CoddyKit. To lekcja 3 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Swift Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Swift Academy zawiera 4 lekcji w sumie.

Formatowanie dat

Surowe wartości Date nie są czytelne dla ludzi. Nowoczesne API FormatStyle języka Swift przejrzyście przekształca je w ciągi znaków zgodne z ustawieniami regionalnymi.

Metoda formatted()

Wywołanie .formatted() na dacie zwraca rozsądnie sformatowany ciąg znaków zgodny z ustawieniami regionalnymi użytkownika.

import Foundation

let now = Date()
let text = now.formatted()
print("Produced a string: \(!text.isEmpty)")

Date.FormatStyle

Przekazanie obiektu Date.FormatStyle pozwala określić, które elementy mają być wyświetlane, oraz niezależnie wybrać style daty i godziny.

import Foundation

let now = Date()
let s = now.formatted(date: .abbreviated, time: .omitted)
print("Has date only: \(!s.isEmpty)")

Style daty i godziny

Parametry date: i time: przyjmują wartości .full, .long, .abbreviated, .numeric lub .omitted.

import Foundation

let now = Date()
let full = now.formatted(date: .complete, time: .shortened)
print(!full.isEmpty)

Dostosowywanie za pomocą składowych

Styl .dateTime pozwala dokładnie połączyć wybrane pola, na przykład .year().month().day().

import Foundation

let now = Date()
let s = now.formatted(.dateTime.year().month().day())
print("Custom fields: \(!s.isEmpty)")

Wybór szerokości pola

Każda składowa przyjmuje opcje, na przykład .month(.wide) wyświetla pełną nazwę miesiąca, a .month(.twoDigits) — jego postać liczbową.

import Foundation

let now = Date()
let s = now.formatted(.dateTime.month(.wide).year())
print(!s.isEmpty)

Tylko godzina

Jeśli data jest znana z kontekstu, można połączyć wyłącznie pola czasu, na przykład .hour().minute().

import Foundation

let now = Date()
let t = now.formatted(.dateTime.hour().minute())
print("Time string: \(!t.isEmpty)")

Formatowanie względne

RelativeFormatStyle tworzy względem bieżącej chwili wyrażenia takie jak „za 2 godziny” lub „wczoraj”.

import Foundation

let soon = Date().addingTimeInterval(3600)
let rel = soon.formatted(.relative(presentation: .named))
print("Relative phrase produced: \(!rel.isEmpty)")

ISO 8601

Do danych przeznaczonych dla maszyn należy używać .formatted(.iso8601) — standardowego formatu wymiany danych dla interfejsów API.

import Foundation

let now = Date()
let iso = now.formatted(.iso8601)
print("Contains T separator: \(iso.contains("T"))")

Ponowne analizowanie ciągów znaków

Style formatowania są odwracalne: można przeanalizować ciąg znaków i utworzyć z niego obiekt Date, używając odpowiadającej mu strategii.

import Foundation

let input = "2024-05-30T12:00:00Z"
if let date = try? Date(input, strategy: .iso8601) {
    print("Parsed: \(date.timeIntervalSince1970 > 0)")
}

FormatStyle a DateFormatter

Nowsze API FormatStyle zapewnia bezpieczeństwo typów i wymaga mniej kodu niż starszy DateFormatter, dlatego należy używać go w nowym kodzie.

import Foundation

let now = Date()
print(now.formatted(date: .long, time: .omitted).isEmpty == false)

Szybkie sprawdzenie

Które wywołanie wyświetla datę, ale pomija godzinę?

Podsumowanie

API FormatStyle formatuje daty za pomocą .formatted(), konfigurowalnych stylów date:/time:, łączonych pól .dateTime, wyrażeń względnych i formatu ISO 8601. Umożliwia także ponowne analizowanie danych i jest preferowane zamiast DateFormatter. Następny temat: strefy czasowe i ustawienia regionalne.

Często zadawane pytania

Czy lekcja „Formatowanie dat” jest bezpłatna?

Tak — pełny tekst „Formatowanie dat” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Swift Academy, przejdź na CoddyKit PRO. Kurs Swift Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Formatowanie dat”?

Wyświetlanie dat za pomocą nowoczesnego API formatowania. Ćwiczysz Swift Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Swift Academy?

Nie wymagamy żadnego doświadczenia. Swift Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 3 z 4.

Ile czasu zajmuje lekcja „Formatowanie dat”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Swift Academy?

Tak. Każda lekcja Swift Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Typ Date i przedziały czasu
  2. Calendar i DateComponents
  3. Formatowanie dat
  4. Strefy czasowe i ustawienia regionalne
← Powrót do Swift Academy