-
Formater un timestamp
Bonjour,
je débute un peu en xml/xslt, et ... Je ne comprends pas du tout comment résoudre mon problème. Enfin, j'ai bien une idée mais ça me semble vraiment tiré par les cheveux et après avoir bien regardé sur Internet, je n'ai pas trouvé mon bonheur.
Je récupère un fichier xml que je transforme par l'intermédiaire d'une feuille xslt, jusque là, tout de normal.
Dans ce xml se trouve un noeud time dont la valeur est en timestamp.
Code:
<time>valeurentimestamp</time>
Je souhaite écrire sur mon document de sortie une heure en " hh:mm le jj mm aa" par exemple. Comment dois-je procéder ?
:s
Si quelqu'un voulait bien m'aider, ce serait vraiment très très très gentil :)
-
Eh bien en fait c'est assez compliqué. Passer d'un timestamp à une date calendaire est un travail de programmation, et XSLT est un langage de décoration. Pas fait pour.
En XSLT 1.0 c'est juste la mort : tu dois lire le timestamp comme un nombre et programmer toi-même le calcul de la date avec des templates récursifs et du XPath.
C'est typiquement le genre de trucs où on voudra définir ses propres fonctions extensions (c'est ce qui est proposé dans le post au-dessus,) ou précalculer les valeurs avec un programme externe, voire carrément utiliser autre chose que XSLT.
En XSLT 2.0 il y a moyen, mais ça reste galère.
-
Merci beaucoup pour cette réponse !
Je souhaitais éviter de me taper de gros calculs à partir de 1970, mais je pense effectivement que... :s Arf ! La simplicité à la XML ^^
Sinon, je vais voir en XSLT 2.0, donc.
Merci infiniment :)