Dans cette fiche...

<Retour>

Description de l'applet

Difficulté : Résultat
Comment gérer les dates en Java ?
Grâce à l'objet Date, bien sûr !
Votre navigateur n'est pas compatible Java !

Listing de l'applet

// --------------------------------------------------
// DATES1 : LES DATES EN JAVA
// --------------------------------------------------
import java.applet.*;
import java.awt.*;
import java.util.Date;
public class Dates1 extends Applet
{
	Date aujourdhui;
	// Initialisation
	public void init()
	{
		// Couleur de fond
		setBackground(Color.black);
		// Lire la date du jour
		aujourdhui = new Date();
	}
	// Affichage
	public void paint(Graphics g)
	{
		// Affichage de la date du jour
		g.setColor(Color.yellow);
		g.drawString(aujourdhui.toString(), 10, 15);
		g.drawString(aujourdhui.toLocaleString(), 10, 30);
		// Affichage des jour, mois, année
		g.setColor(Color.white);
		g.drawString("Jour : " + aujourdhui.getDate(), 10, 45);
		g.drawString("Mois : " + aujourdhui.getMonth(), 10, 60);
		g.drawString("Année : " + aujourdhui.getYear(), 10, 75);
		// Affichage des heures, minutes, secondes
		g.setColor(Color.orange);
		g.drawString("Heures : " + aujourdhui.getHours(), 100, 45);
		g.drawString("Minutes : " + aujourdhui.getMinutes(), 100, 60);
		g.drawString("Secondes : " + aujourdhui.getSeconds(), 100, 75);
	}
}

Le listing en détail...

Les lignes non commentées ont déjà été traitées dans les exemples précédents.

import java.util.Date;
Pour pouvoir utiliser l'objet Date, il faut importer le package correspondant.
On aurait pu également écrire : import java.util.*;
 
Date aujourdhui;
aujourdhui = new Date();
On déclare un objet Date, qui est initialisé plus loin. Le fait de ne rien mettre entre parenthèses indique qu'on souhaite simplement récupérer la date du jour, et non créer une date précise.

On peut écrire, plus rapidement : Date aujourdhui = new Date();
Dans ce cas, on fait la déclaration et l'initialisation de l'objet en une seule étape.

 
g.drawString(aujourdhui.toString(), 10, 15);
g.drawString(aujourdhui.toLocaleString(), 10, 30);
On affiche la date, que l'on doit convertir en chaîne au préalable (puisque la méthode drawString() affiche... des chaînes de caractères).

L'objet Date comporte justement 2 méthodes pour transformer la date en chaîne :

  • la méthode toString(), qui transforme une date en chaîne complète (anglo-saxonne)
  • la méthode toLocaleString(), qui transforme une date en chaîne, en fonction du pays.

Voyez les 2 exemples plus haut.

 
g.drawString("Jour : " + aujourdhui.getDate(), 10, 45);
g.drawString("Mois : " + aujourdhui.getMonth(), 10, 60);
g.drawString("Année : " + aujourdhui.getYear(), 10, 75);
On affiche maintenant les jour/mois/année provenant de la date, sachant que :
  • getDate() donne le jour dans le mois (de 1 à 31)
  • getMonth() donne le mois dans l'année (attention : de 0 à 11)
  • getYear() donne le nombre d'année écoulées depuis le début du siècle (98, 99, 100...)
 
g.drawString("Heures : " + aujourdhui.getHours(), 100, 45);
g.drawString("Minutes : " + aujourdhui.getMinutes(), 100, 60);
g.drawString("Secondes : " + aujourdhui.getSeconds(), 100, 75);
Rebelote, avec les heures, minutes et secondes.

Intégration de l'applet dans la page

Voici le code qui a été utilisé dans cette page HTML pour faire apparaître l'applet :

<applet code="Dates1.class" width=250 height=90>
Votre navigateur n'est pas compatible Java !
</applet>

Pour plus de précisions sur l'intégration d'une applet, cliquez ici.