Liking cljdoc? Tell your friends :D

cljs-time.format

Utilities for parsing and unparsing DateTimes as Strings.

Parsing and printing are controlled by formatters. You can either use one of the built in ISO 8601 and a single RFC 822 formatters or define your own, e.g.:

(def built-in-formatter (formatters :basic-date-time)) (def custom-formatter (formatter "yyyyMMdd"))

To see a list of available built-in formatters and an example of a date-time printed in their format:

(show-formatters)

Once you have a formatter, parsing and printing are strait-forward:

=> (parse custom-formatter "20100311") #<DateTime 2010-03-11T00:00:00.000Z>

=> (unparse custom-formatter (date-time 2010 10 3)) "20101003"

By default the parse function always returns a DateTime instance with a UTC time zone, and the unparse function always represents a given DateTime instance in UTC. A formatter can be modified to different timezones, locales, etc with the functions with-zone, with-locale, with-chronology, and with-pivot-year.

### Utilities for parsing and unparsing DateTimes as Strings.

Parsing and printing are controlled by formatters. You can either use one
of the built in ISO 8601 and a single RFC 822 formatters or define your own, e.g.:

  (def built-in-formatter (formatters :basic-date-time))
  (def custom-formatter (formatter "yyyyMMdd"))

To see a list of available built-in formatters and an example of a date-time
printed in their format:

  (show-formatters)

Once you have a formatter, parsing and printing are strait-forward:

  => (parse custom-formatter "20100311")
  #<DateTime 2010-03-11T00:00:00.000Z>

  => (unparse custom-formatter (date-time 2010 10 3))
  "20101003"

By default the parse function always returns a DateTime instance with a UTC
time zone, and the unparse function always represents a given DateTime
instance in UTC. A formatter can be modified to different timezones, locales,
etc with the functions with-zone, with-locale, with-chronology, and
with-pivot-year.
raw docstring

abbreviatecljs

(abbreviate n s)
source

date-format-patterncljs

source

date-formatterscljs

Note: not all formatters have been implemented yet.

The pattern syntax is mostly compatible with java.text.SimpleDateFormat - time zone names cannot be parsed and a few more symbols are supported. All ASCII letters are reserved as pattern letters, which are defined as follows:

Symbol Meaning Presentation Examples


G era text AD C century of era (>=0) number 20 Y year of era (>=0) year 1996

x weekyear year 1996 w week of weekyear number 27 e day of week number 2 E day of week text Tuesday; Tue

y year year 1996 D day of year number 189 M month of year month July; Jul; 07 d day of month number 10

a halfday of day text PM K hour of halfday (0~11) number 0 h clockhour of halfday (1~12) number 12

H hour of day (0~23) number 0 k clockhour of day (1~24) number 24 m minute of hour number 30 s second of minute number 55 S fraction of second number 978 a meridiem text am; pm A meridiem text AM; PM

z time zone text Pacific Standard Time; PST Z time zone offset/id zone -0800; -08:00; America/Los_Angeles

' escape for text delimiter '' single quote literal '

The count of pattern letters determine the format.

Text: If the number of pattern letters is 4 or more, the full form is used; otherwise a short or abbreviated form is used if available.

Number: The minimum number of digits. Shorter numbers are zero-padded to this amount.

Year: Numeric presentation for year and weekyear fields are handled specially. For example, if the count of 'y' is 2, the year will be displayed as the zero-based year of the century, which is two digits.

Month: 3 or over, use text, otherwise use number.

Zone: 'Z' outputs offset without a colon, 'ZZ' outputs the offset with a colon, 'ZZZ' or more outputs the zone id.

Zone names: Time zone names ('z') cannot be parsed.

Any characters in the pattern that are not in the ranges of ['a'..'z'] and ['A'..'Z'] will be treated as quoted text. For instance, characters like ':', '.', ' ', '#' and '?' will appear in the resulting time text even they are not embraced within single quotes.

**Note: not all formatters have been implemented yet.**

The pattern syntax is mostly compatible with java.text.SimpleDateFormat -
time zone names cannot be parsed and a few more symbols are supported. All
ASCII letters are reserved as pattern letters, which are defined as follows:

  Symbol  Meaning                      Presentation  Examples
  ------  -------                      ------------  -------
  G       era                          text          AD
  C       century of era (>=0)         number        20
  Y       year of era (>=0)            year          1996

  x       weekyear                     year          1996
  w       week of weekyear             number        27
  e       day of week                  number        2
  E       day of week                  text          Tuesday; Tue

  y       year                         year          1996
  D       day of year                  number        189
  M       month of year                month         July; Jul; 07
  d       day of month                 number        10

  a       halfday of day               text          PM
  K       hour of halfday (0~11)       number        0
  h       clockhour of halfday (1~12)  number        12

  H       hour of day (0~23)           number        0
  k       clockhour of day (1~24)      number        24
  m       minute of hour               number        30
  s       second of minute             number        55
  S       fraction of second           number        978
  a       meridiem                     text          am; pm
  A       meridiem                     text          AM; PM

  z       time zone                    text          Pacific Standard Time; PST
  Z       time zone offset/id          zone          -0800; -08:00; America/Los_Angeles

  '       escape for text              delimiter
  ''      single quote                 literal       '

The count of pattern letters determine the format.

**Text:** If the number of pattern letters is 4 or more, the full form is used;
otherwise a short or abbreviated form is used if available.

**Number:** The minimum number of digits. Shorter numbers are zero-padded to this
amount.

**Year:** Numeric presentation for year and weekyear fields are handled
specially. For example, if the count of 'y' is 2, the year will be displayed
as the zero-based year of the century, which is two digits.

**Month:** 3 or over, use text, otherwise use number.

**Zone:** 'Z' outputs offset without a colon, 'ZZ' outputs the offset with a
colon, 'ZZZ' or more outputs the zone id.

**Zone names:** Time zone names ('z') cannot be parsed.

Any characters in the pattern that are not in the ranges of ['a'..'z'] and
['A'..'Z'] will be treated as quoted text. For instance, characters like ':',
'.', ' ', '#' and '?' will appear in the resulting time text even they are
not embraced within single quotes.
sourceraw docstring

date-parse-patterncljs

(date-parse-pattern formatter)
source

date-parserscljs

source

date-setterscljs

source

dayscljs

source

formattercljs

(formatter fmts)
(formatter fmts dtz)
source

formatter-localcljs

(formatter-local fmts)
source

formatterscljs

Map of ISO 8601 and a single RFC 822 formatters that can be used for parsing and, in most cases, printing.

Note: due to current implementation limitations, timezone information cannot be kept. Although the correct offset will be applied to UTC time if supplied.

Map of ISO 8601 and a single RFC 822 formatters that can be used
for parsing and, in most cases, printing.

Note: due to current implementation limitations, timezone information
cannot be kept. Although the correct offset will be applied to UTC
time if supplied.
sourceraw docstring

IDateMapcljsprotocol

date-mapcljs

(date-map date)
source

Mappablecljsprotocol

instant->mapcljs

(instant->map instant)

Returns a map representation of the given instant. It will contain the following keys: :years, :months, :days, :hours, :minutes and :seconds.

Returns a map representation of the given instant.
It will contain the following keys: :years, :months,
:days, :hours, :minutes and :seconds.
source

monthscljs

source

not-implementedcljs

(not-implemented sym)
source

old-string-replacecljs

(old-string-replace s match replacement)
source

parsecljs

(parse s)
(parse fmt s)

Returns a DateTime instance in the UTC time zone obtained by parsing the given string according to the given formatter.

Returns a DateTime instance in the UTC time zone obtained by parsing the
given string according to the given formatter.
sourceraw docstring

parse*cljs

(parse* constructor {:keys [format-str default-year] :as fmt} s)
source

parse-localcljs

(parse-local s)
(parse-local fmt s)

Returns a local DateTime instance obtained by parsing the given string according to the given formatter.

Returns a local DateTime instance obtained by parsing the
given string according to the given formatter.
sourceraw docstring

parse-local-datecljs

(parse-local-date s)
(parse-local-date fmt s)

Returns a local Date instance obtained by parsing the given string according to the given formatter.

Returns a local Date instance obtained by parsing the
given string according to the given formatter.
sourceraw docstring

parser-sort-order-predcljs

(parser-sort-order-pred parser)
source

part-splitter-regexcljs

source

show-formatterscljs

(show-formatters)
(show-formatters dt)

Shows how a given DateTime, or by default the current time, would be formatted with each of the available printing formatters.

Shows how a given DateTime, or by default the current time, would be
formatted with each of the available printing formatters.
sourceraw docstring

timezone-adjustmentcljs

(timezone-adjustment d timezone-string)
source

unparsecljs

(unparse {:keys [format-str formatters]} dt)

Returns a string representing the given DateTime instance in UTC and in the form determined by the given formatter.

Returns a string representing the given DateTime instance in UTC and in the
form determined by the given formatter.
sourceraw docstring

unparse-durationcljs

(unparse-duration duration)

Accepts a Period or Interval and outputs an absolute duration time in form of "1 day", "2 hours", "20 minutes", "2 days 1 hour 15 minutes" etc.

Accepts a Period or Interval and outputs an absolute duration time
in form of "1 day", "2 hours", "20 minutes", "2 days 1 hour
15 minutes" etc.
sourceraw docstring

unparse-localcljs

(unparse-local {:keys [format-str formatters] :as fmt} dt)

Returns a string representing the given local DateTime instance in the form determined by the given formatter.

Returns a string representing the given local DateTime instance in the
form determined by the given formatter.
sourceraw docstring

unparse-local-datecljs

(unparse-local-date {:keys [format-str formatters] :as fmt} dt)

Returns a string representing the given local Date instance in the form determined by the given formatter.

Returns a string representing the given local Date instance in the form
determined by the given formatter.
sourceraw docstring

with-default-yearcljs

(with-default-year f default-year)

Return a copy of a formatter that uses the given default year.

Return a copy of a formatter that uses the given default year.
sourceraw docstring

cljdoc is a website building & hosting documentation for Clojure/Script libraries

× close