Päivämäärän muuntaminen merkkijonoksi

Haskell:
Päivämäärän muuntaminen merkkijonoksi

How to: - Kuinka tehdä:

import Data.Time

-- Oletetaan, että meillä on päivämäärä muuttujassa 'date'
date :: UTCTime
date = UTCTime (fromGregorian 2023 4 7) (secondsToDiffTime 0)

-- Muuntaa päivämäärän merkkijonoksi
dateToString :: UTCTime -> String
dateToString = formatTime defaultTimeLocale "%Y-%m-%d"

-- Esimerkki käytöstä
main :: IO ()
main = putStrLn $ dateToString date

Output:

2023-04-07

Deep Dive - Syväsukellus

Päivämäärät merkkijonoina ovat olleet käytössä tietokoneiden alkuaikojen jälkeen, jolloin ihmiset alkoivat tarvita tapoja luettavasti tallentaa ja esittää ajanhetkiä. Historiallisesti C ja C++ ovat vaikuttaneet muiden kielien päivämääräkäsittelyyn.

Haskell käyttää Data.Time kirjastoa päivämäärän käsittelyyn. formatTime funktio mahdollistaa päivämäärän muuntamisen monenlaisiin formaatteihin. Muotoilujono, esim. "%Y-%m-%d", määrittelee tulosteen muodon. defaultTimeLocale määrää kulttuurikohtaiset asetukset, kuten viikonpäivien ja kuukausien nimet.

Vaihtoehtoisesti, Haskell tarjoaa myös time kirjaston, joka sisältää vanhemmat funktiot, kuten show ajan esittämiseen, mutta ne ovat vähemmän joustavia.

Suoritusyksityiskohdat liittyvät siihen, miten Haskell käsittelee aikaan liittyviä tietotyyppejä ja kuinka formatTime funktio purkaa muotoilujonon muuntaakseen päivämääräarvon merkkijonoksi. Joustavuuden ja kansainvälistymisen myötä on tullut tarve tukea erilaisia kalentereita ja kulttuurisidonnaisia aikamuotoja.

See Also - Katso Myös