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

Int16.TryParse méthode (String, Int16)

 

Date de publication : novembre 2016

Convertit la représentation sous forme de chaîne d'un nombre en son équivalent entier 16 bits signé. Une valeur de retour indique si la conversion a réussi ou a échoué.

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

public static bool TryParse(
	string s,
	out short result
)

Paramètres

s
Type: System.String

Chaîne contenant un nombre à convertir.

result
Type: System.Int16

Quand cette méthode est retournée, contient la valeur de l'entier 16 bits signé équivalente au nombre contenu dans s si la conversion a réussi, ou zéro si elle a échoué. La conversion échoue si le paramètre s est null ou String.Empty, n'est pas au format approprié ou représente un nombre inférieur à MinValue ou supérieur à MaxValue. Ce paramètre est passé non initialisé ; toute valeur fournie initialement dans result sera remplacée.

Valeur de retour

Type: System.Boolean

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

Le Int16.TryParse(String, Int16) méthode diffère de la Int16.Parse(String) méthode en retournant une valeur booléenne qui indique si l’opération d’analyse a réussi au lieu de retourner analysé Int16 valeur. Elle élimine la nécessité d’utiliser la gestion des exceptions pour tester un FormatException dans le cas où s n’est pas valide et ne peut pas être analysée avec succès.

Le s paramètre doit être la représentation sous forme de chaîne d’un nombre sous la forme :

[ws] [signe] chiffres [ws]

Éléments dans des crochets ([et]) sont facultatifs. Le tableau suivant décrit chaque élément.

Élément

Description

ws

Espace blanc facultatif.

sign

Un signe facultatif.

chiffres

Une séquence de chiffres allant de 0 à 9.

Le s paramètre est interprété à l’aide de la NumberStyles.Integer style. Outre les chiffres décimaux, uniquement espaces à gauche et avec un signe de début sont autorisés. Pour définir explicitement les éléments de style ainsi que les informations de mise en forme propres à la culture qui peuvent être présents dans s, utilisez le Int16.TryParse(String, NumberStyles, IFormatProvider, Int16) (méthode).

Le s paramètre est analysé en utilisant les informations de mise en forme dans un NumberFormatInfo objet initialisé pour la culture système actuelle. Pour plus d'informations, consultez CurrentInfo.

Cette surcharge de la TryParse méthode interprète tous les chiffres dans le s paramètre en tant que chiffres décimaux. Pour analyser la représentation sous forme de chaîne d’un nombre hexadécimal, appelez le Int16.TryParse(String, NumberStyles, IFormatProvider, Int16) de surcharge.

L’exemple suivant appelle la Int16.TryParse(String, Int16)méthode avec un nombre de valeurs de chaîne différentes.

using System;

public class StringParsing
{
   public static void Main()
   {
      TryToParse(null);
      TryToParse("16051");
      TryToParse("9432.0");
      TryToParse("16,667");
      TryToParse("   -322   ");
      TryToParse("+4302");
      TryToParse("(100);");
      TryToParse("01FA");
   }

   private static void TryToParse(string value)
   {
      short number;
      bool result = Int16.TryParse(value, out number);
      if (result)
      {
         Console.WriteLine("Converted '{0}' to {1}.", value, number);         
      }
      else
      {
         if (value == null) value = ""; 
         Console.WriteLine("Attempted conversion of '{0}' failed.", value);
      }
   }
}
// The example displays the following output to the console:
//       Attempted conversion of '' failed.
//       Converted '16051' to 16051.
//       Attempted conversion of '9432.0' failed.
//       Attempted conversion of '16,667' failed.
//       Converted '   -322   ' to -322.
//       Converted '+4302' to 4302.
//       Attempted conversion of '(100)' failed.
//       Attempted conversion of '01FA' failed.

Certaines des chaînes qui le TryParse(String, Int16) méthode ne peut pas convertir dans cet exemple sont :

  • "9432.0". La conversion échoue, car la chaîne ne peut pas contenir un séparateur décimal ; Il doit contenir uniquement des chiffres intégraux.

  • "16,667". La conversion échoue, car la chaîne ne peut pas contenir de séparateurs de groupes ; Il doit contenir uniquement des chiffres intégraux.

  • "(100)". La conversion échoue, car la chaîne ne peut pas contenir un signe négatif autre que celui défini par la culture actuelle NumberFormatInfo.NegativeSign et NumberFormatInfo.NumberNegativePattern propriétés.

  • « 01FA ». La conversion échoue, car la chaîne ne peut pas contenir des chiffres hexadécimaux ; Il doit contenir uniquement des chiffres décimaux.

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