Page d'Accueil

Opérations sur des valeurs Temps

 

Convertir une valeur  Temps en chaîne de caractères

Si vous avez un objet DateTime, vous pouvez le convertir en valeur String. Pour rendre cette opération possible, la structure DateTime est équipée d'une méthode appelée ToString. La version par défaut de cette méthode ne prend aucun argument et elle crée simplement une chaîne hors d'une valeur temps. Voici un exemple :

 
using System;

namespace DateAndTime
{
    class Program
    {
        static int Main()
        {
            DateTime time = new DateTime(2002, 4, 22, 16, 8, 44);
            string strTime = time.ToString();

            Console.WriteLine("Date and Time(DateTime): {0}\n", time);
            Console.WriteLine("Date and Time(String):   {0}\n", strTime);
            return 0;
        }
    }
}

Ceci produirait :

Date and Time(DateTime): 4/22/2002 4:08:44 PM

Date and Time(String):   4/22/2002 4:08:44 PM

Press any key to continue . . .

Notez que la valeur produite par la chaîne inclut tous les deux la date, le temps et même la section AM/PM. Dans certains cas, vous seriez intéressés seulement à la date ou au temps. Pour soutenir ce type d'opération, la structure DateTime a une autre version prise en charge dans la méthode ToString () qui prend comme argument une valeur String. Sa syntaxe est :

public string ToString(string format);

En appelant cette méthode, il y a des règles que vous devriez/devez suivre.

Règles et formats de Temps

Comme les dates, les valeurs temps suivent les configurations régionales (et linguistiques) du panneau de configuration quand elles s'affichent. Pour rendre cet affichage plus convivial, Microsoft Windows fournit les règles, à travers quelques caractères que vous pouvez utliser pour formater un temps :

 Les caractères utilisés pour créer un format sont :

Format Utilisé pour Description
hh Heures Un nombre pour l'heure entre de 0 à 23.
Si l'heure est plus petite que 10, elle s'afficherait avec le 0 devant tel que 08. Voici un exemple :
using System;

namespace DateAndTime
{
    class Program
    {
        static int Main()
        {
            DateTime time = new DateTime(2002, 4, 22, 5, 8, 37);
            string strHour = time.ToString("hh");

            Console.WriteLine("Date and Time: {0}", time);
            Console.WriteLine("Hour Value:    {0}\n", strHour);
            return 0;
        }
    }
}
ceci produirait :
Date and Time: 4/22/2002 5:08:37 AM
Hour Value:    05

Press any key to continue . . .

Si l'heure est plus grande que 12, tels que 15, 12 serait soustrait de l'heure et s'afficherait avec un 0 devant, tel que 05. Voici un exemple :

using System;

namespace DateAndTime
{
    class Program
    {
        static int Main()
        {
            DateTime time = new DateTime(2002, 4, 22, 15, 8, 37);
            string strHour = time.ToString("hh");

            Console.WriteLine("Date and Time: {0}", time);
            Console.WriteLine("Hour Value:    {0}\n", strHour);
            return 0;
        }
    }
}
ceci produirait :
Date and Time: 4/22/2002 5:08:37 AM
Hour Value:    05

Press any key to continue . . .
HH Heures Un nombre pour l'heure entre de 0 à 23.
Si l'heure est plus petite que 10, elle s'afficherait avec le 0 devant tel que 08. L'effet est identique que vu pour le format hh.
Si l'heure est plus grands que 12, tel que 15, elle s'afficherait avec cette valeur. Voici un exemple :
using System;

namespace DateAndTime
{
    class Program
    {
        static int Main()
        {
            DateTime time = new DateTime(2002, 4, 22, 15, 8, 37);
            string strHour = time.ToString("HH");

            Console.WriteLine("Date and Time: {0}", time);
            Console.WriteLine("Hour Value:    {0}\n", strHour);
            return 0;
        }
    }
}
ceci produirait :
Date and Time: 4/22/2002 3:08:37 PM
Hour Value:    15

Press any key to continue . . .
mm Minutes Un nombre pour les minutes de 0 à 59.
Si le nombre est plus petit que 10, il s'afficherait avec le 0 devant tel que 06. Voici un exemple :
using System;

namespace DateAndTime
{
    class Program
    {
        static int Main()
        {
            DateTime time = new DateTime(2002, 4, 22, 15, 8, 37);
            string strMinute = time.ToString("mm");

            Console.WriteLine("Date and Time: {0}", time);
            Console.WriteLine("Minute Value:    {0}\n", strMinute);
            return 0;
        }
    }
}

Ceci produirait :

Date and Time: 4/22/2002 3:08:37 PM
Minute Value:    08

Press any key to continue . . .

Si le nombre est 9 plus grands que, il montrerait la même chose.

ss Secondes Une deuxième valeur de 0 à 59.
Si le nombre est moins de 10, il s'afficherait avec le 0 devant tel que 04. Voici un exemple :
using System;

namespace DateAndTime
{
    class Program
    {
        static int Main()
        {
            DateTime time = new DateTime(2002, 4, 22, 15, 8, 7);
            string strSecond = time.ToString("ss");

            Console.WriteLine("Date and Time: {0}", time);
            Console.WriteLine("Hour Value:    {0}\n", strSecond);
            return 0;
        }
    }
}
ceci produirait :
Date and Time: 4/22/2002 3:08:07 PM
Hour Value:    07

Press any key to continue . . .

Si le nombre est plus grands que 9, il s'afficherait comme tel. 

tt
ou
tttt
AM/PM L'expression produisait le côté d'AM ou de P.M. d'une valeur de temps. Voici un exemple :
using System;

namespace DateAndTime
{
    class Program
    {
        static int Main()
        {
            DateTime time = new DateTime(2002, 4, 22, 5, 8, 7);
            string strAMPM = time.ToString("tt");

            Console.WriteLine("Date and Time: {0}", time);
            Console.WriteLine("AM/PM Side:    {0}\n", strAMPM);
            return 0;
        }
    }
}

Ceci produirait :

Date and Time: 4/22/2002 5:08:07 AM
AM/PM Side:    AM

Press any key to continue . . .

Pour créer ou formater la valeur (complète) de temps, vous devez utiliser une combinaison de caractères :

Format Utilisé pour Description
: Séparateur Le séparateur de caractère pour des valeurs temps.
Ce caractère est défini dans les configurations régionales(et linguistiques) du panneau de configuration.
Ne pas utiliser ce caractère par lui-même dans une méthode ToString ().
h ou H Heures Un nombre pour l'heure de 0 à 23.
Si l'heure est plus petite que 10, elle s'afficherait sans 0 devant.
Ne pas utiliser la lettre « h » ou « H » par elle-même dans une méthode ToString ()
m Minutes Un nombre pour minute de 0 à 59.
Si le nombre est plus petit que 10, il s'afficherait sans 0 devant. Voici un exemple :
using System;

namespace DateAndTime
{
    class Program
    {
        static int Main()
        {
            DateTime time = new DateTime(2002, 4, 22, 15, 8, 37);
            string strMinute = time.ToString("h:m");

            Console.WriteLine("Date and Time: {0}", time);
            Console.WriteLine("Minute Value:  {0}\n", strMinute);
            return 0;
        }
    }
}

Ceci produirait :

Date and Time: 4/22/2002 3:08:37 PM
Minute Value:    3:8

Press any key to continue . . .

Si le nombre de minute est plus grands que 9, il s'afficherait en tant que tel.
Ne pas utiliser la lettre « m » par lui-même dans une méthode ToString ().

mm Minutes Un nombre de minute de 0 à 59.
Si le nombre est plus petit que 10, il s'afficherait avec un 0 devant. Voici un exemple :
using System;

namespace DateAndTime
{
    class Program
    {
        static int Main()
        {
            DateTime time = new DateTime(2002, 4, 22, 15, 8, 37);
            string strMinute = time.ToString("h:mm");

            Console.WriteLine("Date and Time: {0}", time);
            Console.WriteLine("Minute Value:    {0}\n", strMinute);
            return 0;
        }
    }
}

Ceci produirait :

Date and Time: 4/22/2002 3:08:37 PM
Minute Value:    3:08

Press any key to continue . . .

Ne pas passer « mm » par elle-même dans une méthode ToString ()

s Secondes Une deuxième valeur de 0 à 59.
Si le nombre est plus petit que 10, il s'afficherait sans 0 devant. Voici un exemple :
using System;

namespace DateAndTime
{
    class Program
    {
        static int Main()
        {
            DateTime time = new DateTime(2002, 4, 22, 15, 8, 7);
            string strSecond = time.ToString("h:mm:s");

            Console.WriteLine("Date and Time: {0}", time);
            Console.WriteLine("Second Value:  {0}\n", strSecond);
            return 0;
        }
    }
}

Ceci produirait :

Date and Time: 4/22/2002 3:08:07 PM
Minute Value:    3:08:7

Press any key to continue . . .

Ne pas passer le « s» par elle-même dans une méthode ToString()

ss Secondes Une deuxième valeur de 0 à 59.
Si le nombre est plus petit que 10, il s'afficherait avec un 0 devant. Voici un exemple :
using System;

namespace DateAndTime
{
    class Program
    {
        static int Main()
        {
            DateTime time = new DateTime(2002, 4, 22, 15, 8, 7);
            string strSecond = time.ToString("h:mm:ss");

            Console.WriteLine("Date and Time: {0}", time);
            Console.WriteLine("Second Value:  {0}\n",
				 strSecond);
            return 0;
        }
    }
}

Ceci produirait :

Date and Time: 4/22/2002 3:08:07 PM
Minute Value:    3:08:07

Press any key to continue . . .

Ne pas passer le « ss » par elle-même dans une méthode ToString ()

En combinant ces caractères pour créer un format, vous devriez respecter les règles de votre langue, telles que l'anglais des USA ou le français. Vous devriez vous référer à la formule réglée dans la page propriété de l'heure de options régionales et linguistiques régionaux du panneau de configuration. 

Opérations de comparaison sur des valeurs Temps

Comme fait pour des valeurs date, vous pouvez comparer des valeurs temps pour découvrir si les unes se produisent avant les autres ou si elles se produisent en même temps. Pour soutenir les comparaisons, la structure DateTime est équipée de la méthode compare ().

Combinaison de la date et de l'Heure

 

Date et Heure du jour

Quand un utilisateur met en marche un ordinateur et tout en l'utilisant, il garde une date et des valeursde temps désignées date et l'heure locales ou date et l'heure du système. Selon votre application, en même temps vous pouvez vouloir obtenir une ou les deux informations. Il est important de savoir que l'ordinateur, pas vous, contrôle cette information (mais vous pouvez programmaticallement la changer si vous voulez). Pour soutenir les deux aspects, la structure DateTime est équipée d'une propriété statique appelée Now. Cette propriété contient l'année, le mois, le jour, le nom du jour, l'heure, la minute, et la seconde. Voici un exemple d'appel :

using System;

namespace DateAndTime
{
    class Program
    {
        static int Main()
        {
            Console.WriteLine("System Date and Time: {0}", DateTime.Now);
            return 0;
        }
    }
}

Voici un exemple d'exécuter le programme :

System Date and Time: 10/15/2006 3:08:48 PM
Press any key to continue . . .

Pour obtenir la date du jour de l'ordinateur, la structure DateTime fournit une propriété statique appelée Today. Voici un exemple :

using System;

namespace DateAndTime
{
    class Program
    {
        static int Main()
        {
            Console.WriteLine("Current Date: {0}", DateTime.Today);
            return 0;
        }
    }
}

Voici un exemple d'exécution du programme :

Current Date: 10/15/2006 12:00:00 AM
Press any key to continue . . .

Formatage des combinaisons de Date  de Temps

Bien que la structure Date Time soit équipée pour produire des valeurs par défaut d'une date et d'une heure en association, vous pouvez utiliser les formats que nous avons passé en revue pour créer votre propre date, dans les ordres de votre choix, tels qu'un temps précédant une date, une valeur fournissant seulement le mois et les minutes, etc.

  

Précédent Copyright © 2007, Yevol