如何在NetBeans模板中更改时间格式 我有一个非常具体的C++项目,我使用NETBESBE.

如何在NetBeans模板中更改时间格式 我有一个非常具体的C++项目,我使用NETBESBE.,c++,netbeans,settings,time-format,C++,Netbeans,Settings,Time Format,之所以这样做,是因为我们需要有一个特定的时间戳,我发现NetBeans模板是插入包含所有相关内容的自动头的一个很好的工具 我很好地设置了所有内容,但我不知道如何在标题模板中设置时间格式 目前它显示: 创建于2017年4月6日下午2:18 但由于我在中欧工作,我需要24小时制,这样我就可以 于2017年4月6日创建。14:18时 我找到了如何更改日期格式的方法,但由于某些原因,它在某些时候不起作用 我甚至尝试使用FreeMaker的模板语言引用,因此我创建了一个可变时间,如下所示: <#as

之所以这样做,是因为我们需要有一个特定的时间戳,我发现NetBeans模板是插入包含所有相关内容的自动头的一个很好的工具

我很好地设置了所有内容,但我不知道如何在标题模板中设置时间格式

目前它显示:

创建于2017年4月6日下午2:18

但由于我在中欧工作,我需要24小时制,这样我就可以

于2017年4月6日创建。14:18时

我找到了如何更改日期格式的方法,但由于某些原因,它在某些时候不起作用

我甚至尝试使用FreeMaker的模板语言引用,因此我创建了一个可变时间,如下所示:

<#assign dateTime = .now>
<#assign time = dateTime?time>

${time?iso("Europe/Zagreb")}
// -*- C++ -*-
<#assign licenseFirst = "/*">
<#assign licensePrefix = " * ">
<#assign licenseLast = " */">

<#assign aDateTime = .now>
<#assign time = aDateTime?time>

<#include "${project.licensePath}">

/* 
 * File:   ${NAME}.${EXTENSION}
 * Author: ${user}
 *
 * Created on ${DATE} at ${time?iso("Europe/Zagreb")}
 */

#ifndef ${GUARD_NAME}
#define ${GUARD_NAME}



#endif  /* ${GUARD_NAME} */

${time?iso(“欧洲/萨格勒布”)}
但它仍然没有改变任何事情

现在,我的模板如下所示:

<#assign dateTime = .now>
<#assign time = dateTime?time>

${time?iso("Europe/Zagreb")}
// -*- C++ -*-
<#assign licenseFirst = "/*">
<#assign licensePrefix = " * ">
<#assign licenseLast = " */">

<#assign aDateTime = .now>
<#assign time = aDateTime?time>

<#include "${project.licensePath}">

/* 
 * File:   ${NAME}.${EXTENSION}
 * Author: ${user}
 *
 * Created on ${DATE} at ${time?iso("Europe/Zagreb")}
 */

#ifndef ${GUARD_NAME}
#define ${GUARD_NAME}



#endif  /* ${GUARD_NAME} */
<代码> //-*-C++ /* *文件:${NAME}.${EXTENSION} *作者:${user} * *于${DATE}于${time?iso(“欧洲/萨格勒布”)}创建 */ #ifndef${GUARD_NAME} #定义${GUARD_NAME} #endif/*${GUARD_NAME}*/ 这有可能改变吗?如何改变


感谢您的帮助

在您的问题中,您链接了一个资源(谢谢!!!)建议以下日期:

${date?date?string("dd.MM.yyyy")}
我也尝试了同样的方法,效果很好:

${time?time?string("HH.mm.ss")}
顺便说一句,我还试着产生一些错误,得到了一些很好的错误消息,清楚地说明NB的期望和得到的结果:

${date?time?string("hh.mm.ss")}
${time?date?string("hh.mm.ss")}
${time?datetime?string("hh.mm.ss")}
${date?datetime?string("hh.mm.ss")}
制作:

  • 错误:在Templates/Classes/Class.java的第20行第6列 字符串与预期的日期/时间格式不匹配。要解析的字符串是:“11-Jan-2018”。预期的格式是:“HH:mm:ss”
  • 错误:在Templates/Classes/Class.java的第21行第6列 字符串与预期的日期/时间格式不匹配。要分析的字符串是:“13:40:27”。预期格式为:“dd-MMM-yyyy”
  • 错误:在Templates/Classes/Class.java的第22行第6列 字符串与预期的日期/时间格式不匹配。要分析的字符串是:“13:40:27”。预期格式为:“dd-MMM-yyy-HH:mm:ss”
  • 错误:在Templates/Classes/Class.java的第23行第6列 字符串与预期的日期/时间格式不匹配。要解析的字符串是:“11-Jan-2018”。预期格式为:“dd-MMM-yyy-HH:mm:ss”

您确定编辑的模板正确吗?使用您发布的模板,我得到以下信息:
创建于2017年4月6日16:14:23+02:00
。显示24小时的时间。@acm您是对的。我编辑了一个错误的文件。这显然是一个漫长的工作日:)我也在为此挣扎。我感到悲哀和沮丧的是,即使在2017年,我们仍在为基本本地化而挣扎。Netbeans至少应该利用用户期望的本地化格式,而不是使用特定于一个国家的格式来替代用户的选择(或者,坦率地说,Netbeans应该避免成为傲慢的参与者)。如果这太困难,那么使用ISO8601格式,这是美国和大多数其他国家的标准。