Cet article a fait l'objet d'une traduction manuelle. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte.
Traduction
Source
Ce sujet n'a pas encore été évalué - Évaluez ce sujet

Int32.Parse, méthode (String, NumberStyles)

Convertit la représentation sous forme de chaîne d'un nombre dans un style spécifié en entier signé 32 bits équivalent.

Espace de noms :  System
Assembly :  mscorlib (dans mscorlib.dll)
public static int Parse(
	string s,
	NumberStyles style
)

Paramètres

s
Type : System.String
Chaîne contenant un nombre à convertir.
style
Type : System.Globalization.NumberStyles
Combinaison de bits des valeurs d'énumération qui indique les éléments de style pouvant être présents dans s. Une valeur typique à spécifier est Integer.

Valeur de retour

Type : System.Int32
Entier signé 32 bits équivalant au nombre spécifié dans s.
Exception Condition
ArgumentNullException

s est null.

ArgumentException

style n'est pas une valeur NumberStyles.

ou

style n'est pas une combinaison de valeurs AllowHexSpecifier et HexNumber.

FormatException

Le format de s n'est pas conforme à style.

OverflowException

s représente un nombre inférieur à MinValue ou supérieur à MaxValue.

ou

s inclut des chiffres différents de zéro et fractionnaires.

Le paramètre style définit les éléments de style (un espace blanc, le signe positif ou négatif ou le symbole de séparateur des milliers, par exemple) autorisés dans le paramètre s pour que l'opération d'analyse réussisse. Il doit s'agir d'une combinaison de bits indicateurs issus de l'énumération NumberStyles. Selon la valeur de style, le paramètre s peut inclure les éléments suivants :

[ws][$][signe][chiffres,]chiffres[.chiffres_fractionnaires][e[signe]chiffres_exponentiels][ws]

Ou, si style inclut AllowHexSpecifier :

[ws]chiffreshex[ws]

Les éléments entre crochets ([ et ]) sont facultatifs. Le tableau suivant décrit les différents éléments.

Élément

Description

ws

Espace blanc facultatif. L'espace blanc peut apparaître au début de s si style inclut l'indicateur NumberStyles.AllowLeadingWhite et à la fin de s si style inclut l'indicateur NumberStyles.AllowTrailingWhite.

$

Symbole monétaire spécifique à la culture. Sa position dans la chaîne est définie par les propriétés NumberFormatInfo.CurrencyNegativePattern et NumberFormatInfo.CurrencyPositivePattern de la culture actuelle. Le symbole monétaire de la culture actuelle peut apparaître dans s si style inclut l'indicateur NumberStyles.AllowCurrencySymbol.

sign

Signe facultatif. Le signe peut apparaître au début de s si style inclut l'indicateur NumberStyles.AllowLeadingSign et à la fin de s si style inclut l'indicateur NumberStyles.AllowTrailingSign. Les parenthèses peuvent être utilisées dans s pour indiquer une valeur négative si style inclut l'indicateur NumberStyles.AllowParentheses.

chiffres

chiffres_fractionnaires

chiffres_exponentiels

Séquence de chiffres compris entre 0 et 9. Pour chiffres_fractionnaires, seul le chiffre 0 est valide.

,

Symbole du séparateur des milliers spécifique à la culture. Le séparateur des milliers de la culture actuelle peut apparaître dans s si style inclut l'indicateur NumberStyles.AllowThousands.

.

Symbole de séparateur décimal spécifique à la culture. Le symbole de séparateur décimal de la culture actuelle peut apparaître dans s si style inclut l'indicateur NumberStyles.AllowDecimalPoint. Seul le chiffre 0 peut apparaître comme un chiffre fractionnaire pour que l'opération d'analyse réussisse ; si les chiffres_fractionnaires incluent un autre chiffre, une OverflowException est levée.

e

Caractère e ou E, qui indique que la valeur est représentée en notation exponentielle. Le paramètre s peut représenter un nombre en notation exponentielle si style inclut l'indicateur NumberStyles.AllowExponent.

chiffreshex

Séquence de chiffres hexadécimaux compris entre 0 et f, ou 0 et F.

Une chaîne contenant uniquement des chiffres (ce qui correspond au style NumberStyles.None) est toujours analysée avec succès. La plupart des membres NumberStyles restants contrôlent des éléments qui peuvent être présents, sans que ce soit obligatoire, dans la chaîne d'entrée. Le tableau suivant montre de quelle manière des membres NumberStyles individuels affectent les éléments qui peuvent être présents dans s.

Valeur NumberStyles

Éléments autorisés dans s en plus des chiffres

None

Élément chiffres uniquement.

AllowDecimalPoint

Virgule décimale (. ) et éléments chiffres fractionnaires.

AllowExponent

Le paramètre s peut également utiliser la notation exponentielle.

AllowLeadingWhite

Élément ws au début de s.

AllowTrailingWhite

Élément ws à la fin de s.

AllowLeadingSign

Élément signe au début de s.

AllowTrailingSign

Élément signe à la fin de s.

AllowParentheses

Élément signe sous la forme de parenthèses entourant la valeur numérique.

AllowThousands

Élément de séparateur des milliers (,).

AllowCurrencySymbol

Élément HTML $.

Currency

Tout. Le paramètre s ne peut pas représenter un nombre hexadécimal ou un nombre en notation exponentielle.

Float

Élément ws au début ou à la fin de s, signe au début de s et séparateur décimal (.). . Le paramètre s peut également utiliser la notation exponentielle.

Number

Éléments ws, sign, séparateur des milliers (,) et virgule décimale (.) .

Any

Tous les styles, à l'exception de s qui ne peut pas représenter un nombre hexadécimal.

Si l'indicateur NumberStyles.AllowHexSpecifier est utilisé, s doit être une valeur hexadécimale. Les seuls autres indicateurs pouvant être combinés avec le paramètre s sont NumberStyles.AllowLeadingWhite et NumberStyles.AllowTrailingWhite. (L'énumération NumberStyles possède un style de numérotation composite, NumberStyles.HexNumber, qui inclut les deux indicateurs d'espace blanc.)

Le paramètre s est analysé à l'aide des informations de mise en forme figurant dans un objet NumberFormatInfo initialisé pour la culture système en cours. Afin de spécifier la culture dont les informations de mise en forme seront utilisées pour l'analyse, appelez la surcharge Int32.Parse(String, NumberStyles, IFormatProvider).

L'exemple suivant utilise la méthode Int32.Parse(String, NumberStyles) pour analyser les représentations sous forme de chaîne de plusieurs valeurs Int32. La culture utilisée dans cet exemple est en-US.


using System;
using System.Globalization;

public class ParseInt32
{
   public static void Main()
   {
      Convert("104.0", NumberStyles.AllowDecimalPoint);
      Convert("104.9", NumberStyles.AllowDecimalPoint);
      Convert(" $17,198,064.42", NumberStyles.AllowCurrencySymbol |
                                 NumberStyles.Number);
      Convert("103E06", NumberStyles.AllowExponent);
      Convert("-1,345,791", NumberStyles.AllowThousands);
      Convert("(1,345,791)", NumberStyles.AllowThousands |
                             NumberStyles.AllowParentheses);
   }

   private static void Convert(string value, NumberStyles style)
   {
      try
      {
         int number = Int32.Parse(value, style);
         Console.WriteLine("Converted '{0}' to {1}.", value, number);
      }
      catch (FormatException)
      {
         Console.WriteLine("Unable to convert '{0}'.", value);
      }
      catch (OverflowException)
      {
         Console.WriteLine("'{0}' is out of range of the Int32 type.", value);   
      }
   }
}
// The example displays the following output to the console:
//       Converted '104.0' to 104.
//       '104.9' is out of range of the Int32 type.
//       ' $17,198,064.42' is out of range of the Int32 type.
//       Converted '103E06' to 103000000.
//       Unable to convert '-1,345,791'.
//       Converted '(1,345,791)' to -1345791.


.NET Framework

Pris en charge dans : 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Pris en charge dans : 4, 3.5 SP1

Windows 7, Windows Vista SP1 ou ultérieur, Windows XP SP3, Windows XP SP2 Édition x64, Windows Server 2008 (installation minimale non prise en charge), Windows Server 2008 R2 (installation minimale prise en charge avec SP1 ou version ultérieure), Windows Server 2003 SP2

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.
Cela vous a-t-il été utile ?
(1500 caractères restants)
Contenu de la communauté Ajouter
Annotations FAQ