Int64.TryParse Methode

Definitie

Converteert de tekenreeksweergave van een getal naar het 64-bits equivalent van het ondertekende gehele getal. Een retourwaarde geeft aan of de conversie is geslaagd of mislukt.

Overloads

Name Description
TryParse(String, Int64)

Converteert de tekenreeksweergave van een getal naar het 64-bits equivalent van het ondertekende gehele getal. Een retourwaarde geeft aan of de conversie is geslaagd of mislukt.

TryParse(ReadOnlySpan<Char>, Int64)

Converteert de spanweergave van een getal naar het equivalent van het 64-bits ondertekende gehele getal. Een retourwaarde geeft aan of de conversie is geslaagd of mislukt.

TryParse(String, NumberStyles, IFormatProvider, Int64)

Converteert de tekenreeksweergave van een getal in een opgegeven stijl en cultuurspecifieke notatie naar het equivalent van het 64-bits ondertekende gehele getal. Een retourwaarde geeft aan of de conversie is geslaagd of mislukt.

TryParse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider, Int64)

Converteert de spanweergave van een getal in een opgegeven stijl en cultuurspecifieke notatie naar het equivalent van het 64-bits ondertekende gehele getal. Een retourwaarde geeft aan of de conversie is geslaagd of mislukt.

TryParse(String, Int64)

Converteert de tekenreeksweergave van een getal naar het 64-bits equivalent van het ondertekende gehele getal. Een retourwaarde geeft aan of de conversie is geslaagd of mislukt.

public:
 static bool TryParse(System::String ^ s, [Runtime::InteropServices::Out] long % result);
public static bool TryParse(string s, out long result);
static member TryParse : string * int64 -> bool
Public Shared Function TryParse (s As String, ByRef result As Long) As Boolean

Parameters

s
String

Een tekenreeks die een getal bevat dat moet worden geconverteerd.

result
Int64

Wanneer deze methode retourneert, bevat het 64-bits geheel getal dat gelijk is aan het getal in s, als de conversie is geslaagd of nul als de conversie is mislukt. De conversie mislukt als de s parameter wel of Emptyniet de juiste indeling heeft of een getal vertegenwoordigt dat kleiner is null dan Int64.MinValue of groter is dan Int64.MaxValue. Deze parameter wordt niet-geïnitialiseerd doorgegeven; elke waarde die oorspronkelijk is opgegeven result , wordt overschreven.

Retouren

trueals s deze is geconverteerd; anders. false

Voorbeelden

In het volgende voorbeeld wordt de Int64.TryParse(String, Int64) methode aangeroepen met een aantal verschillende tekenreekswaarden.

using System;

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

   private static void TryToParse(string value)
   {
      bool success = Int64.TryParse(value, out long number);
      if (success)
      {
         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 '160519' to 160519.
//       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.
open System

let tryToParse (value: string) =
    match Int64.TryParse value with
    | true, number ->
        printfn $"Converted '{value}' to {number}."
    | _ ->
        let value =
            if isNull value then 
                ""
            else
                value
        printfn $"Attempted conversion of '{value}' failed."

tryToParse null
tryToParse "160519"
tryToParse "9432.0"
tryToParse "16,667"
tryToParse "   -322   "
tryToParse "+4302"
tryToParse "(100);"
tryToParse "01FA"


// The example displays the following output to the console:
//       Attempted conversion of '' failed.
//       Converted '160519' to 160519.
//       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.
Module StringParsing
   Public Sub Main()
      TryToParse(Nothing)
      TryToParse("160519")
      TryToParse("9432.0")
      TryToParse("16,667")
      TryToParse("   -322   ")
      TryToParse("+4302")
      TryToParse("(100)")
      TryToParse("01FA")
   End Sub
   
   Private Sub TryToParse(value As String)
      Dim number As Long
      Dim result As Boolean = Int64.TryParse(value, number)
      If result Then
         Console.WriteLine("Converted '{0}' to {1}.", value, number)
      Else
         If value Is Nothing Then value = "" 
         Console.WriteLine("Attempted conversion of '{0}' failed.", value)
      End If     
   End Sub
End Module
' The example displays the following output to the console:
'       Attempted conversion of '' failed.
'       Converted '160519' to 160519.
'       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.

Enkele tekenreeksen die de TryParse(String, Int64) methode in dit voorbeeld niet kan converteren, zijn:

  • "9432.0". De conversie mislukt omdat de tekenreeks geen decimaalteken kan bevatten; het mag alleen integrale cijfers bevatten.

  • "16,667". De conversie mislukt omdat de tekenreeks geen groepsscheidingstekens kan bevatten; het mag alleen integrale cijfers bevatten.

  • "(100)". De conversie mislukt omdat de tekenreeks geen ander teken mag bevatten dan het teken dat is gedefinieerd door de huidige cultuur NumberFormatInfo.NegativeSign en NumberFormatInfo.NumberNegativePattern eigenschappen.

  • "01FA". De conversie mislukt omdat de tekenreeks geen hexadecimale cijfers kan bevatten; het mag alleen decimale cijfers bevatten.

Opmerkingen

De TryParse methode lijkt op de Parse methode, behalve dat de TryParse methode geen uitzondering genereert als de conversie mislukt. Het elimineert de noodzaak om uitzonderingsafhandeling te gebruiken om te testen op een FormatException in het geval dat s ongeldig is en niet kan worden geparseerd.

De s parameter bevat een getal van het formulier:

[ws][sign]digits[ws]

Elementen in vierkante haken ([ en ]) zijn optioneel. In de volgende tabel wordt elk element beschreven.

Element Beschrijving
Ws Een optionele witruimte.
ondertekenen Een optioneel teken.
Cijfers Een reeks cijfers tussen 0 en 9.

De s parameter wordt geïnterpreteerd met behulp van de NumberStyles.Integer stijl. Naast de decimale cijfers zijn alleen voorloop- en volgspaties met een voorloopteken toegestaan. Als u de stijlelementen expliciet wilt definiëren in combinatie met de cultuurspecifieke opmaakinformatie die aanwezig kan zijn s, gebruikt u de TryParse(String, NumberStyles, IFormatProvider, Int64) methode.

De s parameter wordt geparseerd met behulp van de opmaakgegevens in een NumberFormatInfo object dat is geïnitialiseerd voor de huidige systeemcultuur. Zie CurrentInfo voor meer informatie.

Deze overbelasting van de TryParse methode interpreteert alle cijfers in de s parameter als decimale cijfers. Als u de tekenreeksweergave van een hexadecimaal getal wilt parseren, roept u de TryParse(String, NumberStyles, IFormatProvider, Int64) overbelasting aan.

Zie ook

Van toepassing op

TryParse(ReadOnlySpan<Char>, Int64)

Converteert de spanweergave van een getal naar het equivalent van het 64-bits ondertekende gehele getal. Een retourwaarde geeft aan of de conversie is geslaagd of mislukt.

public:
 static bool TryParse(ReadOnlySpan<char> s, [Runtime::InteropServices::Out] long % result);
public static bool TryParse(ReadOnlySpan<char> s, out long result);
static member TryParse : ReadOnlySpan<char> * int64 -> bool
Public Shared Function TryParse (s As ReadOnlySpan(Of Char), ByRef result As Long) As Boolean

Parameters

s
ReadOnlySpan<Char>

Een bereik met de tekens die het getal vertegenwoordigen dat moet worden geconverteerd.

result
Int64

Wanneer deze methode retourneert, bevat het 64-bits geheel getal dat gelijk is aan het getal in s, als de conversie is geslaagd of nul als de conversie is mislukt. De conversie mislukt als de s parameter wel of Emptyniet de juiste indeling heeft of een getal vertegenwoordigt dat kleiner is null dan Int64.MinValue of groter is dan Int64.MaxValue. Deze parameter wordt niet-geïnitialiseerd doorgegeven; elke waarde die oorspronkelijk is opgegeven result , wordt overschreven.

Retouren

trueals s deze is geconverteerd; anders. false

Van toepassing op

TryParse(String, NumberStyles, IFormatProvider, Int64)

Converteert de tekenreeksweergave van een getal in een opgegeven stijl en cultuurspecifieke notatie naar het equivalent van het 64-bits ondertekende gehele getal. Een retourwaarde geeft aan of de conversie is geslaagd of mislukt.

public:
 static bool TryParse(System::String ^ s, System::Globalization::NumberStyles style, IFormatProvider ^ provider, [Runtime::InteropServices::Out] long % result);
public static bool TryParse(string s, System.Globalization.NumberStyles style, IFormatProvider provider, out long result);
static member TryParse : string * System.Globalization.NumberStyles * IFormatProvider * int64 -> bool
Public Shared Function TryParse (s As String, style As NumberStyles, provider As IFormatProvider, ByRef result As Long) As Boolean

Parameters

s
String

Een tekenreeks die een getal bevat dat moet worden geconverteerd. De tekenreeks wordt geïnterpreteerd met behulp van de stijl die is opgegeven door style.

style
NumberStyles

Een bitsgewijze combinatie van opsommingswaarden die de stijlelementen aangeeft die aanwezig kunnen zijn in s. Een typische waarde die moet worden opgegeven, is Integer.

provider
IFormatProvider

Een object dat cultuurspecifieke opmaakinformatie over slevert.

result
Int64

Wanneer deze methode retourneert, bevat het 64-bits geheel getal dat gelijk is aan het getal in s, als de conversie is geslaagd of nul als de conversie is mislukt. De conversie mislukt als de s parameter wel null of Emptyniet voldoet aan een indeling die voldoet aan styleof een getal kleiner is dan Int64.MinValue of groter is dan Int64.MaxValue. Deze parameter wordt niet-geïnitialiseerd doorgegeven; elke waarde die oorspronkelijk is opgegeven result , wordt overschreven.

Retouren

trueals s deze is geconverteerd; anders. false

Uitzonderingen

style is geen NumberStyles waarde.

– of –

style is geen combinatie van AllowHexSpecifier en HexNumber waarden.

Voorbeelden

In het volgende voorbeeld wordt de TryParse(String, NumberStyles, IFormatProvider, Int64) methode aangeroepen met een aantal verschillende tekenreeksen en NumberStyles waarden.

using System;
using System.Globalization;

public class StringParsing
{
   public static void Main()
   {
      string numericString;
      NumberStyles styles;

      numericString = "106779";
      styles = NumberStyles.Integer;
      CallTryParse(numericString, styles);

      numericString = "-30677";
      styles = NumberStyles.None;
      CallTryParse(numericString, styles);

      styles = NumberStyles.AllowLeadingSign;
      CallTryParse(numericString, styles);

      numericString = "301677-";
      CallTryParse(numericString, styles);

      styles = styles | NumberStyles.AllowTrailingSign;
      CallTryParse(numericString, styles);

      numericString = "$10634";
      styles = NumberStyles.Integer;
      CallTryParse(numericString, styles);

      styles = NumberStyles.Integer | NumberStyles.AllowCurrencySymbol;
      CallTryParse(numericString, styles);

      numericString = "10345.00";
      styles = NumberStyles.Integer | NumberStyles.AllowDecimalPoint;
      CallTryParse(numericString, styles);

      numericString = "10345.72";
      styles = NumberStyles.Integer | NumberStyles.AllowDecimalPoint;
      CallTryParse(numericString, styles);

      numericString = "22,593";
      styles = NumberStyles.Integer | NumberStyles.AllowThousands;
      CallTryParse(numericString, styles);

      numericString = "12E-01";
      styles = NumberStyles.Integer | NumberStyles.AllowExponent;
      CallTryParse(numericString, styles);

      numericString = "12E03";
      CallTryParse(numericString, styles);

      numericString = "80c1";
      CallTryParse(numericString, NumberStyles.HexNumber);

      numericString = "0x80C1";
      CallTryParse(numericString, NumberStyles.HexNumber);
   }

   private static void CallTryParse(string stringToConvert, NumberStyles styles)
   {
      CultureInfo provider;

      // If currency symbol is allowed, use en-US culture.
      if ((styles & NumberStyles.AllowCurrencySymbol) > 0)
         provider = new CultureInfo("en-US");
      else
         provider = CultureInfo.InvariantCulture;

      bool success = Int64.TryParse(stringToConvert, styles,
                                   provider, out long number);
      if (success)
         Console.WriteLine($"Converted '{stringToConvert}' to {number}.");
      else
         Console.WriteLine($"Attempted conversion of '{stringToConvert}' failed.");
   }
}
// The example displays the following output to the console:
//       Converted '106779' to 106779.
//       Attempted conversion of '-30677' failed.
//       Converted '-30677' to -30677.
//       Attempted conversion of '301677-' failed.
//       Converted '301677-' to -301677.
//       Attempted conversion of '$10634' failed.
//       Converted '$10634' to 10634.
//       Converted '10345.00' to 10345.
//       Attempted conversion of '10345.72' failed.
//       Converted '22,593' to 22593.
//       Attempted conversion of '12E-01' failed.
//       Converted '12E03' to 12000.
//       Converted '80c1' to 32961.
//       Attempted conversion of '0x80C1' failed.
open System
open System.Globalization

let callTryParse (stringToConvert: string) styles =
    let provider =
        // If currency symbol is allowed, use en-US culture.
        if int (styles &&& NumberStyles.AllowCurrencySymbol) > 0 then
            CultureInfo "en-US"
        else
            CultureInfo.InvariantCulture

    match Int64.TryParse(stringToConvert, styles, provider) with
    | true, number ->
        printfn $"Converted '{stringToConvert}' to {number}."
    | _ ->
        printfn $"Attempted conversion of '{stringToConvert}' failed."


[<EntryPoint>]
let main _ =
    let numericString = "106779"
    let styles = NumberStyles.Integer
    callTryParse numericString styles

    let numericString = "-30677"
    let styles = NumberStyles.None
    callTryParse numericString styles

    let styles = NumberStyles.AllowLeadingSign
    callTryParse numericString styles

    let numericString = "301677-"
    callTryParse numericString styles

    let styles = styles ||| NumberStyles.AllowTrailingSign
    callTryParse numericString styles

    let numericString = "$10634"
    let styles = NumberStyles.Integer
    callTryParse numericString styles

    let styles = NumberStyles.Integer ||| NumberStyles.AllowCurrencySymbol
    callTryParse numericString styles

    let numericString = "10345.00"
    let styles = NumberStyles.Integer ||| NumberStyles.AllowDecimalPoint
    callTryParse numericString styles

    let numericString = "10345.72"
    let styles = NumberStyles.Integer ||| NumberStyles.AllowDecimalPoint
    callTryParse numericString styles

    let numericString = "22,593"
    let styles = NumberStyles.Integer ||| NumberStyles.AllowThousands
    callTryParse numericString styles

    let numericString = "12E-01"
    let styles = NumberStyles.Integer ||| NumberStyles.AllowExponent
    callTryParse numericString styles

    let numericString = "12E03"
    callTryParse numericString styles

    let numericString = "80c1"
    callTryParse numericString NumberStyles.HexNumber

    let numericString = "0x80C1"
    callTryParse numericString NumberStyles.HexNumber

    0

// The example displays the following output to the console:
//       Converted '106779' to 106779.
//       Attempted conversion of '-30677' failed.
//       Converted '-30677' to -30677.
//       Attempted conversion of '301677-' failed.
//       Converted '301677-' to -301677.
//       Attempted conversion of '$10634' failed.
//       Converted '$10634' to 10634.
//       Converted '10345.00' to 10345.
//       Attempted conversion of '10345.72' failed.
//       Converted '22,593' to 22593.
//       Attempted conversion of '12E-01' failed.
//       Converted '12E03' to 12000.
//       Converted '80c1' to 32961.
//       Attempted conversion of '0x80C1' failed.
Imports System.Globalization

Module StringParsing
   Public Sub Main()
      Dim numericString As String
      Dim styles As NumberStyles
      
      numericString = "106779"
      styles = NumberStyles.Integer
      CallTryParse(numericString, styles)
      
      numericString = "-30677"
      styles = NumberStyles.None
      CallTryParse(numericString, styles)
      
      styles = NumberStyles.AllowLeadingSign
      CallTryParse(numericString, styles)
      
      numericString = "301677-"
      CallTryParse(numericString, styles)
      
      styles = styles Or NumberStyles.AllowTrailingSign
      CallTryParse(numericString, styles)
      
      numericString = "$10634"
      styles = NumberStyles.Integer
      CallTryParse(numericString, styles)
      
      styles = NumberStyles.Integer Or NumberStyles.AllowCurrencySymbol
      CallTryParse(numericString, styles)

      numericString = "10345.00"
      styles = NumberStyles.Integer Or NumberStyles.AllowDecimalPoint
      CallTryParse(numericString, styles)
      
      numericString = "10345.72"
      styles = NumberStyles.Integer Or NumberStyles.AllowDecimalPoint
      CallTryParse(numericString, styles)

      numericString = "22,593" 
      styles = NumberStyles.Integer Or NumberStyles.AllowThousands
      CallTryParse(numericString, styles)
      
      numericString = "12E-01"
      styles = NumberStyles.Integer Or NumberStyles.AllowExponent
      CallTryParse(numericString, styles) 
          
      numericString = "12E03"
      CallTryParse(numericString, styles) 
      
      numericString = "80c1"
      CallTryParse(numericString, NumberStyles.HexNumber)
      
      numericString = "0x80C1"
      CallTryParse(numericString, NumberStyles.HexNumber)
   End Sub
   
   Private Sub CallTryParse(stringToConvert As String, styles AS NumberStyles)
      Dim number As Long
      Dim provider As CultureInfo
      
      ' If currency symbol is allowed, use en-US culture.
      If CBool(styles And NumberStyles.AllowCurrencySymbol) Then
         provider = CultureInfo.CurrentCulture
      Else
         provider = New CultureInfo("en-US")
      End If
      
      Dim result As Boolean = Int64.TryParse(stringToConvert, styles, _
                                             provider, number)
      If result Then
         Console.WriteLine("Converted '{0}' to {1}.", stringToConvert, number)
      Else
         Console.WriteLine("Attempted conversion of '{0}' failed.", _
                           Convert.ToString(stringToConvert))
      End If                                                                           
   End Sub
End Module
' The example displays the following output to the console:
'       Converted '106779' to 106779.
'       Attempted conversion of '-30677' failed.
'       Converted '-30677' to -30677.
'       Attempted conversion of '301677-' failed.
'       Converted '301677-' to -301677.
'       Attempted conversion of '$10634' failed.
'       Converted '$10634' to 10634.
'       Converted '10345.00' to 10345.
'       Attempted conversion of '10345.72' failed.
'       Converted '22,593' to 22593.
'       Attempted conversion of '12E-01' failed.
'       Converted '12E03' to 12000.
'       Converted '80c1' to 32961.
'       Attempted conversion of '0x80C1' failed.

Opmerkingen

De TryParse methode lijkt op de Parse methode, behalve dat de TryParse methode geen uitzondering genereert als de conversie mislukt. Het elimineert de noodzaak om uitzonderingsafhandeling te gebruiken om te testen op een FormatException in het geval dat s ongeldig is en niet kan worden geparseerd.

De style parameter definieert de stijlelementen (zoals witruimte of een positief of negatief teken) die zijn toegestaan in de s parameter om de parseringsbewerking te laten slagen. Dit moet een combinatie zijn van bitvlagmen uit de NumberStyles opsomming. Afhankelijk van de waarde van stylede s parameter kunnen de volgende elementen bevatten:

[ws][$][teken][cijfers;]digits[.fractional_digits][e[sign]exponential_digits][ws]

Of, als de style parameter het volgende bevat NumberStyles.AllowHexSpecifier:

[ws]hexdigits[ws]

Elementen in vierkante haken ([ en ]) zijn optioneel. In de volgende tabel wordt elk element beschreven.

Element Beschrijving
Ws Optionele witruimte. Witruimte kan aan het begin van s de styleNumberStyles.AllowLeadingWhite vlag worden weergegeven, of aan het einde van s de styleNumberStyles.AllowTrailingWhite vlag.
$ Een cultuurspecifiek valutasymbool. De positie in de tekenreeks wordt gedefinieerd door de CurrencyPositivePattern eigenschap van het NumberFormatInfo object dat wordt geretourneerd door de GetFormat methode van de provider parameter. Het valutasymbool kan worden weergegeven s als style deze de NumberStyles.AllowCurrencySymbol vlag bevat.
ondertekenen Een optioneel teken. Een tekensymbool kan worden weergegeven s als style deze de NumberStyles.AllowLeadingSign of NumberStyles.AllowTrailingSign vlaggen bevat.
Cijfers

fractional_digits

exponential_digits
Een reeks cijfers van 0 tot en met 9. Voor fractional_digits is alleen het cijfer 0 geldig.
, Een cultuurspecifiek scheidingsteken voor duizendtallen. Het scheidingsteken voor duizendtallen van de cultuur die is opgegeven door provider , kan worden weergegeven s als style de NumberStyles.AllowThousands vlag wordt opgenomen.
. Een cultuurspecifiek decimaalteken. Het decimaalteken van de cultuur die is opgegeven door provider , kan worden weergegeven s als style de NumberStyles.AllowDecimalPoint vlag wordt opgenomen.
e Het teken e of E, dat aangeeft dat de waarde wordt weergegeven in exponentiële notatie. De s parameter kan een getal in exponentiële notatie vertegenwoordigen als style deze de NumberStyles.AllowExponent vlag bevat.
hexdigits Een reeks hexadecimale cijfers van 0 tot en met f of 0 tot en met F.

Note

Alle nultekens (U+0000) s worden genegeerd door de parseringsbewerking, ongeacht de waarde van het style argument.

Een tekenreeks met alleen decimale cijfers (die overeenkomt met de NumberStyles.None vlag) parseert altijd met succes. De meeste resterende NumberStyles leden bepalen elementen die mogelijk wel aanwezig zijn in deze invoertekenreeks, maar die niet aanwezig zijn. De volgende tabel geeft aan hoe afzonderlijke NumberStyles leden van invloed zijn op de elementen die aanwezig kunnen zijn in s.

Niet-samengestelde getalstijlwaarden Elementen die naast cijfers zijn toegestaan
NumberStyles.None Alleen decimale cijfers.
NumberStyles.AllowDecimalPoint De decimale komma ( . ) en fractional_digits elementen. Fractional_digits mag echter slechts uit één of meer cijfers bestaan of de methode retourneertfalse.
NumberStyles.AllowExponent De s parameter kan ook exponentiële notatie gebruiken. De s parameter moet een geheel getal vertegenwoordigen binnen het bereik van het Int64 gegevenstype zonder een niet-nul fractioneel onderdeel.
NumberStyles.AllowLeadingWhite Het ws-element aan het begin van s.
NumberStyles.AllowTrailingWhite Het ws-element aan het einde van s.
NumberStyles.AllowLeadingSign Een teken kan vóór cijfers worden weergegeven.
NumberStyles.AllowTrailingSign Een teken kan na cijfers worden weergegeven.
NumberStyles.AllowParentheses Het tekenelement in de vorm van haakjes tussen de numerieke waarde.
NumberStyles.AllowThousands Het scheidingsteken voor duizendtallen ( , ) .
NumberStyles.AllowCurrencySymbol Het $ element.
NumberStyles.Currency Alle elementen. De s parameter kan geen hexadecimaal getal of een getal in exponentiële notatie vertegenwoordigen.
NumberStyles.Float Het ws-element aan het begin of einde van s, het teken aan het begin van sen het decimaalteken ( . ) De s parameter kan ook exponentiële notatie gebruiken.
NumberStyles.Number De elementen ws, teken, scheidingstekens voor duizendtallen (,) en decimaalteken (.).
NumberStyles.Any Alle stijlen, behalve s geen hexadecimaal getal.

Als de NumberStyles.AllowHexSpecifier vlag wordt gebruikt, s moet een hexadecimale waarde zonder voorvoegsel zijn. C9AF3 parseert bijvoorbeeld met succes, maar '0xC9AF3' niet. De enige andere vlaggen die aanwezig kunnen zijn, style zijn NumberStyles.AllowLeadingWhite en NumberStyles.AllowTrailingWhite. (De NumberStyles opsomming heeft een samengestelde stijl, NumberStyles.HexNumberdie beide witruimtevlagmen bevat.)

De provider parameter is een IFormatProvider implementatie, zoals een CultureInfo object of een NumberFormatInfo object, waarvan GetFormat de methode een NumberFormatInfo object retourneert. Het NumberFormatInfo object biedt cultuurspecifieke informatie over de indeling van s. Als provider dat het is null, wordt het NumberFormatInfo object voor de huidige cultuur gebruikt.

Zie ook

Van toepassing op

TryParse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider, Int64)

Converteert de spanweergave van een getal in een opgegeven stijl en cultuurspecifieke notatie naar het equivalent van het 64-bits ondertekende gehele getal. Een retourwaarde geeft aan of de conversie is geslaagd of mislukt.

public:
 static bool TryParse(ReadOnlySpan<char> s, System::Globalization::NumberStyles style, IFormatProvider ^ provider, [Runtime::InteropServices::Out] long % result);
public static bool TryParse(ReadOnlySpan<char> s, System.Globalization.NumberStyles style, IFormatProvider provider, out long result);
static member TryParse : ReadOnlySpan<char> * System.Globalization.NumberStyles * IFormatProvider * int64 -> bool
Public Shared Function TryParse (s As ReadOnlySpan(Of Char), style As NumberStyles, provider As IFormatProvider, ByRef result As Long) As Boolean

Parameters

s
ReadOnlySpan<Char>

Een bereik met de tekens die het getal vertegenwoordigen dat moet worden geconverteerd. De periode wordt geïnterpreteerd met behulp van de stijl die is opgegeven door style.

style
NumberStyles

Een bitsgewijze combinatie van opsommingswaarden die de stijlelementen aangeeft die aanwezig kunnen zijn in s. Een typische waarde die moet worden opgegeven, is Integer.

provider
IFormatProvider

Een object dat cultuurspecifieke opmaakinformatie over slevert.

result
Int64

Wanneer deze methode retourneert, bevat het 64-bits geheel getal dat gelijk is aan het getal in s, als de conversie is geslaagd of nul als de conversie is mislukt. De conversie mislukt als de s parameter wel null of Emptyniet voldoet aan een indeling die voldoet aan styleof een getal kleiner is dan Int64.MinValue of groter is dan Int64.MaxValue. Deze parameter wordt niet-geïnitialiseerd doorgegeven; elke waarde die oorspronkelijk is opgegeven result , wordt overschreven.

Retouren

trueals s deze is geconverteerd; anders. false

Van toepassing op