Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

Currently I put the date in my document using: \date{\today}

How do I display the date in the YYYY-MM-DD format?

share|improve this question
4  
See here ctan.org/pkg/datetime From the documentation (pg 10) we have The option yyyymmdd makes \today produce YYYY/MM/DD date –  Sigur Jan 4 '14 at 13:30

5 Answers 5

up vote 37 down vote accepted

edit: As noted by @Sean Allred, datetime has been superseded by datetime2.

Using the package datetime with the option yyyymmdd as

\usepackage[yyyymmdd]{datetime}

you just change the value of \dateseparator to replace the default / by - (or -- if you want).

\renewcommand{\dateseparator}{--}

Also as noted by @Vincent, you can define your own date format.

enter image description here

share|improve this answer
2  
Somebody should check whether ISO 8601 says that the separator has to be - or --. (iso.org/iso/home/standards/iso8601.htm). Definitely YYYY/MM/DD should not be used - that would violate the standard. Keith –  KeithB Jan 8 '14 at 9:53
    
@KeithB, Wikipedia claims, “The separator used between date values (year, month, week, and day) is the hyphen”. Also, it’s unlikely the standard mandates characters encoded neither in EBCDIC nor ASCII. –  J. C. Salomon Jan 13 '14 at 19:20
1  
note: datetime has been superseded by datetime2 –  Sean Allred Apr 6 at 17:38

According to the link of Sigur:

\usepackage{datetime}
\newdateformat{specialdate}{\THEYEAR-\twodigit{\THEMONTH}-\twodigit{\THEDAY}}
\date{\specialdate\today}
share|improve this answer

Use the package isodate

\usepackage[iso,german]{isodate}

It offers various options (and needs one of its language options) and commands to change the date format.

share|improve this answer

My solution needs no packages. Only, what you need to know, is that the primitive registers \day, \monthand\year` include the desired information.

\def\mydate{\leavevmode\hbox{\the\year-\twodigits\month-\twodigits\day}}
\def\twodigits#1{\ifnum#1<10 0\fi\the#1}

The date in my format: \mydate.
share|improve this answer

Use the package datetime2

\usepackage[iso]{datetime2}

share|improve this answer
1  
This should be an edit to the other answers using datetime since datetime is now superseded and should no longer be used for new documents. –  Paul Gessler Apr 6 at 17:55

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.