Cet article a fait l’objet d’une traduction automatique. Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez également afficher le texte anglais dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte traduit.
Traduction
Anglais

TimeSpan.TryParseExact méthode (String, String, IFormatProvider, TimeSpan)

 

Date de publication : novembre 2016

Convertit la représentation sous forme de chaîne d'un intervalle de temps dans son équivalent TimeSpan à l'aide du format et des informations de format spécifiques à la culture spécifiés, et retourne une valeur qui indique si la conversion a réussi. Le format de la chaîne doit correspondre exactement au format spécifié.

Espace de noms:   System
Assembly:  mscorlib (dans mscorlib.dll)

public static bool TryParseExact(
	string input,
	string format,
	IFormatProvider formatProvider,
	out TimeSpan result
)

Paramètres

input
Type: System.String

Chaîne qui spécifie l'intervalle de temps à convertir.

format
Type: System.String

Chaîne de format standard ou personnalisée qui définit le format requis pour input.

formatProvider
Type: System.IFormatProvider

Objet qui fournit des informations de mise en forme propres à la culture.

result
Type: System.TimeSpan

Quand cette méthode est retournée, contient un objet qui représente l'intervalle de temps spécifié par input, ou TimeSpan.Zero si la conversion a échoué. Ce paramètre est passé sans être initialisé.

Valeur de retour

Type: System.Boolean

true si la conversion de input est réussie ; sinon, false.

Le TryParseExact(String, String, IFormatProvider, TimeSpan) méthode analyse la représentation sous forme de chaîne d’un intervalle de temps, qui doit être au format défini par le format paramètre, à ceci près que les et les espaces blancs de fin sont ignorés. Cette méthode est similaire à la ParseExact(String, String, IFormatProvider) (méthode), à ceci près qu’elle ne lève pas d’exception si la conversion échoue.

Le format paramètre est une chaîne qui contient un spécificateur de format standard unique ou un ou plusieurs spécificateurs de format personnalisés qui définissent le format requis de input. Pour plus d’informations sur les chaînes de format valide, consultez Chaînes de format TimeSpan standard. et Chaînes de format TimeSpan personnalisées.

System_CAPS_importantImportant

Le TryParseExact(String, String, IFormatProvider, TimeSpan) méthode utilise les conventions de la culture spécifiée par le formatProvider paramètre uniquement si format est une norme TimeSpan dont la valeur est « g » ou « G » de chaîne de format. Le « c », « t » et les chaînes de format standard « T » utilisent les conventions de mise en forme de la culture dite indifférente. Chaînes de format personnalisées définissent le format précis de la chaîne d’entrée et utilisent des caractères littéraux pour séparer les composants d’un intervalle de temps.

Le formatProvider paramètre est un IFormatProvider implémentation qui fournit des informations spécifiques à la culture sur le format de la chaîne retournée si format est une chaîne de format standard. Le formatProvider paramètre peut être une des opérations suivantes :

Si formatProvider est null, le DateTimeFormatInfo objet est associé à la culture actuelle est utilisé.

L’exemple suivant utilise la TryParseExact(String, String, IFormatProvider, TimeSpanStyles, TimeSpan) méthode pour analyser plusieurs représentations sous forme de chaîne d’intervalles de temps à l’aide de différentes chaînes de format et de cultures.

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      string intervalString, format;
      TimeSpan interval;
      CultureInfo culture;

      // Parse hour:minute value with "g" specifier current culture.
      intervalString = "17:14";
      format = "g";
      culture = CultureInfo.CurrentCulture;
      if (TimeSpan.TryParseExact(intervalString, format, culture, out interval))
         Console.WriteLine("'{0}' --> {1}", intervalString, interval);
      else
         Console.WriteLine("Unable to parse {0}", intervalString);

      // Parse hour:minute:second value with "G" specifier.
      intervalString = "17:14:48";
      format = "G";
      culture = CultureInfo.InvariantCulture;
      if (TimeSpan.TryParseExact(intervalString, format, culture, out interval))
         Console.WriteLine("'{0}' --> {1}", intervalString, interval);
      else
         Console.WriteLine("Unable to parse {0}", intervalString);

      // Parse hours:minute.second value with "G" specifier 
      // and current (en-US) culture.     
      intervalString = "17:14:48.153";
      format = "G";
      culture = CultureInfo.CurrentCulture;
      if (TimeSpan.TryParseExact(intervalString, format, culture, out interval))
         Console.WriteLine("'{0}' --> {1}", intervalString, interval);
      else
         Console.WriteLine("Unable to parse {0}", intervalString);

      // Parse days:hours:minute.second value with "G" specifier 
      // and current (en-US) culture.     
      intervalString = "3:17:14:48.153";
      format = "G";
      culture = CultureInfo.CurrentCulture;
      if (TimeSpan.TryParseExact(intervalString, format, culture, out interval))
         Console.WriteLine("'{0}' --> {1}", intervalString, interval);
      else
         Console.WriteLine("Unable to parse {0}", intervalString);

      // Parse days:hours:minute.second value with "G" specifier 
      // and fr-FR culture.     
      intervalString = "3:17:14:48.153";
      format = "G";
      culture = new CultureInfo("fr-FR");
      if (TimeSpan.TryParseExact(intervalString, format, culture, out interval))
         Console.WriteLine("'{0}' --> {1}", intervalString, interval);
      else
         Console.WriteLine("Unable to parse {0}", intervalString);

      // Parse days:hours:minute.second value with "G" specifier 
      // and fr-FR culture.     
      intervalString = "3:17:14:48,153";
      format = "G";
      if (TimeSpan.TryParseExact(intervalString, format, culture, out interval))
         Console.WriteLine("'{0}' --> {1}", intervalString, interval);
      else
         Console.WriteLine("Unable to parse {0}", intervalString);

      // Parse a single number using the "c" standard format string. 
      intervalString = "12";
      format = "c";
      if (TimeSpan.TryParseExact(intervalString, format, null, out interval))
         Console.WriteLine("'{0}' --> {1}", intervalString, interval);
      else
         Console.WriteLine("Unable to parse {0}", intervalString);

      // Parse a single number using the "%h" custom format string. 
      format = "%h";
      if (TimeSpan.TryParseExact(intervalString, format, null, out interval))
         Console.WriteLine("'{0}' --> {1}", intervalString, interval);
      else
         Console.WriteLine("Unable to parse {0}", intervalString);

      // Parse a single number using the "%s" custom format string. 
      format = "%s";
      if (TimeSpan.TryParseExact(intervalString, format, null, out interval))
         Console.WriteLine("'{0}' --> {1}", intervalString, interval);
      else
         Console.WriteLine("Unable to parse {0}", intervalString);
   }
}
// The example displays the following output:
//       '17:14' --> 17:14:00
//       Unable to parse 17:14:48
//       Unable to parse 17:14:48.153
//       '3:17:14:48.153' --> 3.17:14:48.1530000
//       Unable to parse 3:17:14:48.153
//       '3:17:14:48,153' --> 3.17:14:48.1530000
//       '12' --> 12.00:00:00
//       '12' --> 12:00:00
//       '12' --> 00:00:12

Plateforme Windows universelle
Disponible depuis 8
.NET Framework
Disponible depuis 4.0
Bibliothèque de classes portable
Pris en charge dans : plateformes .NET portables
Silverlight
Disponible depuis 4.0
Silverlight pour Windows Phone
Disponible depuis 7.1
Windows Phone
Disponible depuis 8.1
Retour au début
Afficher: