如何设置Eclipse日期变量格式?

时间:2009-07-15 14:21:41

标签: eclipse date variables code-templates

如何设置可在Eclipse模板中使用的$ {date}变量的格式?

4 个答案:

答案 0 :(得分:33)

2016年2月更新:bug 75981正式修复!
请参阅Jminianswer below

enter image description here


2015年7月更新,6年后:

下面提到的错误似乎在Eclipse 4.x中得到修复 Eric Wang comments below

@date ${id:date('YYYY-MMM-dd')} ${time} 
  

这给了我eclipse 4中的英文日期时间格式。


原始答案2009 Eclipse 3.x

哎呀!有一个长期存在的错误:bug 75981

  

可以增强${date}变量以接受参数(类似于其他参数)   在3.3M1中添加的参数化,例如${d:date(format)},其中formatSimpleDateFormat的模式。

唯一的替代方法是从包SimpleTemplateVariableResolver修改类 org.eclipse.jface.text.templates (如this thread中所述)。 (你这里有一个example of such an extension)。

thread mentions您可以找到该课程的来源。

\eclipse\plugins\org.eclipse.platform.source_3.1.0\src\org.eclipse.text_3.1.0\src.zip

示例:

public static class Date extends SimpleTemplateVariableResolver {
/**
* Creates a new date variable
*/
public Date() {
super("date", TextTemplateMessages.getString("GlobalVariables.variable.description.date")); //$NON-NLS-1$ //$NON-NLS-2$ }

protected String resolve(TemplateContext context) {
    //return DateFormat.getDateInstance().format(new java.util.Date());
    DateFormat df = new SimpleDateFormat("dd/MM/yyyy");
    return df.format(new java.util.Date()); } }

答案 1 :(得分:12)

您可以告诉Eclipse使用与您的操作系统不同的特定区域设置。 Eclipse 3.5(64位)不使用MacOS X区域设置。使用德国作为国家/地区的MacOS X英语安装语言提供了错误的日期格式。

当您将以下行追加到eclipse.ini时,可以为Eclipse安装修复它:

-Duser.language=de
-Duser.region=DE

答案 2 :(得分:10)

我已经使用Eclipse Neon M5修复了Bug 75981。您可以在此处下载此里程碑版本:

http://www.eclipse.org/downloads/index-developer.php

......或者等到2016年6月正式发布霓虹灯。

以下是对其工作原理的简要说明:

  • 和以前一样,你可以使用没有参数的日期变量。示例:${date}
  • 您可以将该变量与其他参数一起使用。在这种情况下,您需要命名变量(因为您没有在其他地方重复使用日期,变量的名称无关紧要)。示例:${mydate:date}
    • 第一个参数是日期格式。示例:${d:date('yyyy-MM-dd')}
    • 第二个参数是区域设置。示例:${maDate:date('EEEE dd MMMM yyyy HH:mm:ss Z', 'fr')}

Edit Template in Eclipse Preferences

我的博客上有关此功能的更多信息:Bug 75981 is fixed!

答案 3 :(得分:6)

最近对这些绊脚石的更多信息(像我一样):

对于ISO 8601日期格式,可以使用语言设置fr-CA。