日期格式:从网络格式更改为其他格式

日期格式:从网络格式更改为其他格式

我的 LaTeX 文档中有两个不同的日期,它们不是当前日期(来自网络表单的 LaTeX 模板中的日期)。它们看起来像这样:2016-03-31,但我希望这些日期采用 格式dd/mm/yyyy。我现在正在做的是使用包\usepackage[ddmmyyyy]{date time} 并将 放入\date{}我的日期中,但它不会改变日期的格式。我该如何正确更改日期的格式?

答案1

这很有效。如果-显示为日期分隔符,则可能是对 进行了“错误”的重新定义\dateseparator

请注意日期datetime尚未进一步确定——Nicola Talbotdatetime2大约在一年前就发表了文章。

\documentclass{article}

\usepackage[ddmmyyyy]{datetime}
%\renewcommand{\dateseparator}{-}

\title{The Theory of Brontosaurs}
\author{Mrs. Ann Elk}
\date{\today}

\begin{document}
\maketitle
\end{document}

在此处输入图片描述

更新

yyyy-mm-dd以下是将输入转换为的版本dd/mm/yyyy

\documentclass{article}

\usepackage{xparse}

\ExplSyntaxOn
\newcommand{\changedate}[2][/]{%
  \tl_set:Nx \l_tmpa_tl {#2}
  \seq_set_split:NnV \l_tmpa_seq {-} {\l_tmpa_tl}
  \seq_reverse:N \l_tmpa_seq
  \seq_use:Nnnn \l_tmpa_seq {#1} {#1} {#1}
}
\ExplSyntaxOff

\title{The Theory of Brontosaurs}
\author{Mrs. Ann Elk}

\newcommand{\webdate}{2016-03-31}

\date{\changedate{\webdate}}


\begin{document}
%\changedate{\webdate}
\maketitle
\end{document}

在此处输入图片描述

答案2

\date不会尝试解析其参数。它只是存储它,当您执行时,存储的值会插入到标题页中\maketitle,因此如果您这样做\date{2016-03-31},那么这就是将要出现的内容。您需要明确地按照您想要的方式格式化它,例如\date{31/03/2016}(正如其他人所建议的那样)或将 ISO 日期包装在可以解析它的命令中。例如:

\documentclass{article}

\usepackage[datesep=/,style=ddmmyyyy]{datetime2}

\title{Sample}
\author{Me}
\date{\DTMdate{2016-03-31}}

\begin{document}
\maketitle

Another date: \DTMdate{2016-03-07}.

\end{document}

生成:

文件图像

另一种方法是修改\maketitle工作方式,使其解析\@date,但这需要了解您正在使用的类和包。没有最小工作示例(MWE)对此我们无法提供进一步的帮助。

答案3

\documentclass{article}

\usepackage[en,useregional]{datetime2}


\DTMnewdatestyle{mydateformat}{
    \renewcommand{\DTMdisplaydate}[4]{
        \DTMtwodigits{##3}~\DTMenglishmonthname{##2}~\number##1
    }
    \renewcommand{\DTMDisplaydate}[4]{%
        \DTMdisplaydate{##3}{##2}{##1}{##4}%
    }%
}
\DTMsetdatestyle{mydateformat}


\begin{document}
    
    \DTMdate{2022-3-2}  % (02 March 2022)When you input date as YYYY-MM-DD format
    \\  
    \DTMDate{3-6-2023} % (03 June 2023)When you input date as DD-MM-YYYY fomat
    
\end{document}

这里将显示日期,如 2023 年 5 月 4 日格式,要显示 dd-mm-yyyy 或 yyyy-mm-dd 格式,则显示 DD MMMM YYYY 格式,如显示 2022 年 9 月 2 日至 2022 年 9 月 2 日

相关内容