web-dev-qa-db-fra.com

Comment définir le format de la variable de date Eclipse?

Comment puis-je définir le format de la variable $ {date} qui peut être utilisée dans les modèles Eclipse?

37
desolat

Mise à jour de février 2016: bug 75981 est officiellement corrigé!
Voir Jmini 's réponse ci-dessous

enter image description here


Mise à jour de juillet 2015, 6 ans plus tard:

Le bogue mentionné ci-dessous semble corrigé dans Eclipse 4.x.
Eric Wangcommentaires ci-dessous :

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

cela me donne le format datetime anglais dans Eclipse 4.


Réponse originale 2009 Eclipse 3.x

Argh! Il y a un bug de longue date juste pour cela: bug 75981

La variable ${date} Pourrait être améliorée pour accepter un argument (similaire à d'autres paramétrages ajoutés dans 3.3M1), par exemple ${d:date(format)}, où format est un modèle pour SimpleDateFormat.

La seule alternative serait de modifier la classe SimpleTemplateVariableResolver (comme décrit dans ce fil ), à partir du package org.Eclipse.jface.text.templates. (Vous avez ici un exemple d'une telle extension ).

Ceci le fil mentionne les sources où vous pouvez trouver la classe.

\Eclipse\plugins\org.Eclipse.platform.source_3.1.0\src\org.Eclipse.text_3.1.0\src.Zip

Exemple:

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()); } }
36
VonC

Vous pouvez dire à Eclipse d'utiliser une locale spécifique différente de celle de votre système d'exploitation. Eclipse 3.5 (64 bits) n'utilise pas le paramètre de région MacOS X. La langue d'installation anglaise de MacOS X avec l'Allemagne comme pays fournit un format de date incorrect.

Vous pouvez le réparer pour votre installation Eclipse lorsque vous ajoutez les lignes suivantes à votre Eclipse.ini:

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

J'ai corrigé Bug 75981 avec Eclipse Neon M5. Vous pouvez télécharger cette version de Milestone ici:

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

… Ou attendez jusqu'en juin 2016 pour la sortie officielle de Neon.

Voici une brève description de son fonctionnement:

  • Comme auparavant, vous pouvez utiliser la variable de date sans argument. Exemple: ${date}
  • Vous pouvez utiliser la variable avec des arguments supplémentaires. Dans ce cas, vous devrez nommer la variable (puisque vous ne réutilisez pas la date ailleurs, le nom de la variable n'a pas d'importance). Exemple: ${mydate:date}
    • Le premier paramètre est le format de la date. Exemple: ${d:date('yyyy-MM-dd')}
    • Le deuxième paramètre est la locale. Exemple: ${maDate:date('EEEE dd MMMM yyyy HH:mm:ss Z', 'fr')}

Edit Template in Eclipse Preferences

Plus d'informations sur cette fonctionnalité sur mon blog: Le bogue 75981 est corrigé!

10
Jmini

Informations supplémentaires pour ceux qui trébuchent ces derniers temps (comme moi):

Pour le format de date ISO 8601, on peut utiliser les paramètres de langue fr-CA.

6
Aconcagua