Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
Cet article fournit des remarques supplémentaires à la documentation de référence de cette API.
La DateTime.TryParse(String, IFormatProvider, DateTimeStyles, DateTime) méthode analyse une chaîne qui peut contenir des informations de date, d’heure et de fuseau horaire. Elle est similaire à la DateTime.Parse(String, IFormatProvider, DateTimeStyles) méthode, sauf que la DateTime.TryParse(String, DateTime) méthode ne lève pas d’exception si la conversion échoue.
Cette méthode tente d’ignorer complètement les données non reconnues et analyse la chaîne d’entrée (s). Si s elle contient une heure mais aucune date, la méthode remplace par défaut la date actuelle ou, si styles elle inclut l’indicateur NoCurrentDateDefault , elle remplace DateTime.Date.MinValue. Si s elle contient une date mais pas d’heure, 12:00 minuit est utilisée comme heure par défaut. Si une date est présente mais que son composant année se compose de deux chiffres seulement, il est converti en année dans le provider calendrier actuel du paramètre en fonction de la valeur de la Calendar.TwoDigitYearMax propriété. Les espaces blancs en début, au milieu ou en fin de s sont ignorés. La date et l’heure peuvent être entre crochets avec une paire de caractères NUMÉRO DE DÉBUT et de fin ('#', U+0023) et peuvent être suivis avec un ou plusieurs caractères NULL (U+0000).
Les formats valides spécifiques pour les éléments de date et d’heure, ainsi que les noms et les symboles utilisés dans les dates et les heures, sont définis par le provider paramètre, qui peut être l’un des éléments suivants :
- Objet CultureInfo qui représente la culture dont la mise en forme est utilisée dans le
sparamètre. L’objet DateTimeFormatInfo retourné par la CultureInfo.DateTimeFormat propriété définit la mise en forme utilisée danss. - Objet DateTimeFormatInfo qui définit la mise en forme utilisée dans
s. - Une implémentation personnalisée de IFormatProvider. Sa IFormatProvider.GetFormat méthode retourne un DateTimeFormatInfo objet qui définit la mise en forme utilisée dans
s.
Si provider est null, la culture actuelle est utilisée.
Si s est la représentation sous forme de chaîne d’un jour bissextile dans une année bissextile du calendrier actuel, la méthode analyse s avec succès. Si s est la représentation sous forme de chaîne d'un jour bissextile dans une année non bissextile du calendrier actuel de provider, l’opération d’analyse échoue et la méthode retourne false.
Le styles paramètre définit l’interprétation précise de la chaîne analysée et la façon dont l’opération d’analyse doit la gérer. Il peut s’agir d’un ou de plusieurs membres de l’énumération DateTimeStyles , comme décrit dans le tableau suivant.
| Membre DateTimeStyles | Descriptif |
|---|---|
| AdjustToUniversal | Analyse s et, si nécessaire, le convertit en UTC. Si s inclut un décalage de fuseau horaire, ou s’il s ne contient aucune information de fuseau horaire, mais styles inclut l’indicateur DateTimeStyles.AssumeLocal , la méthode analyse la chaîne, appelle ToUniversalTime pour convertir la valeur retournée DateTime en UTC et définit la Kind propriété DateTimeKind.Utcsur . Si s elle indique qu’elle représente UTC, ou si s elle ne contient pas d’informations de fuseau horaire, mais styles inclut l’indicateur DateTimeStyles.AssumeUniversal , la méthode analyse la chaîne, n’effectue aucune conversion de fuseau horaire sur la valeur retournée DateTime et définit la Kind propriété DateTimeKind.Utcsur . Dans tous les autres cas, l’indicateur n’a aucun effet. |
| AllowInnerWhite | Bien que valide, cette valeur est ignorée. L’espace blanc interne est autorisé dans les éléments de date et d’heure de s. |
| AllowLeadingWhite | Bien que valide, cette valeur est ignorée. L’espace blanc de début est autorisé dans les éléments de date et d’heure de s. |
| AllowTrailingWhite | Bien que valide, cette valeur est ignorée. Les espaces blancs à la fin sont autorisés dans les éléments de date et d'heure de s. |
| AllowWhiteSpaces | Spécifie qui s peut contenir des espaces blancs de début, interne et de fin. Il s’agit du comportement par défaut. Il ne peut pas être substitué en fournissant une valeur d’énumération plus restrictive DateTimeStyles telle que DateTimeStyles.None. |
| AssumeLocal | Spécifie que si s ne contient pas d'informations de fuseau horaire, il est supposé représenter une heure locale. Sauf si l’indicateur DateTimeStyles.AdjustToUniversal est présent, la propriété Kind de la valeur retournée DateTime est définie sur DateTimeKind.Local. |
| AssumeUniversal | Spécifie que si s manque d'informations sur le fuseau horaire, il est supposé représenter l'heure UTC. Sauf si l’indicateur DateTimeStyles.AdjustToUniversal est présent, la méthode convertit la valeur retournée DateTime de UTC en heure locale et définit sa propriété Kind sur DateTimeKind.Local. |
| None | Bien que valide, cette valeur est ignorée. |
| RoundtripKind | Pour les chaînes qui contiennent des informations de fuseau horaire, tente d’empêcher la conversion d’une chaîne de date et d’heure en valeur DateTime avec sa Kind propriété définie sur DateTimeKind.Local. En règle générale, une telle chaîne est créée en appelant la DateTime.ToString(String) méthode à l’aide des spécificateurs de format standard « o », « r » ou « u ». |
Si s ne contient aucune information de fuseau horaire, la méthode DateTime.TryParse(String, IFormatProvider, DateTimeStyles, DateTime) retourne une valeur DateTime dont la propriété Kind est DateTimeKind.Unspecified sauf indication contraire d'un drapeau styles. Si s inclut des informations de fuseau horaire ou de décalage de fuseau horaire, la méthode DateTime.TryParse(String, IFormatProvider, DateTimeStyles, DateTime) effectue toute conversion de temps nécessaire et retourne l’une des opérations suivantes :
- Valeur DateTime dont la date et l’heure reflètent l’heure locale et dont Kind la propriété est DateTimeKind.Local.
- Ou, si
stylesinclut le AdjustToUniversal drapeau, une DateTime valeur dont la date et l’heure reflètent l’heure UTC et dont la propriété Kind est DateTimeKind.Utc.
Ce comportement peut être remplacé à l’aide de l’indicateur DateTimeStyles.RoundtripKind .
Analyser des cultures personnalisées
Si vous analysez une chaîne de date et d’heure générée pour une culture personnalisée, utilisez la TryParseExact méthode au lieu de la TryParse méthode pour améliorer la probabilité que l’opération d’analyse réussisse. Une chaîne de date et d’heure de culture personnalisée peut être complexe et difficile à analyser. La TryParse méthode tente d’analyser une chaîne avec plusieurs modèles d’analyse implicites, qui peuvent échouer. En revanche, la TryParseExact méthode vous oblige à désigner explicitement un ou plusieurs modèles d’analyse exacts susceptibles de réussir.
Pour plus d’informations sur les cultures personnalisées, consultez la System.Globalization.CultureAndRegionInfoBuilder classe.