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
- Haskell.org Documentation – Haskellin virallinen dokumentaatio.
- Data.Time Library on Hackage – Tarkemmat tiedot
Data.Time
kirjastosta.