Export (0) Print
Expand All

UInt64.TryParse Method (String, UInt64)

Tries to convert the string representation of a number to its 64-bit unsigned integer equivalent. A return value indicates whether the conversion succeeded or failed.

This API is not CLS-compliant. The CLS-compliant alternative is Parse.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)

[CLSCompliantAttribute(false)]
public static bool TryParse(
	string s,
	out ulong result
)

Parameters

s
Type: System.String

A string that represents the number to convert.

result
Type: System.UInt64

When this method returns, contains the 64-bit unsigned integer value that is equivalent to the number contained in s, if the conversion succeeded, or zero if the conversion failed. The conversion fails if the s parameter is null or String.Empty, is not of the correct format, or represents a number less than UInt64.MinValue or greater than MaxValue. This parameter is passed uninitialized.

Return Value

Type: System.Boolean
true if s was converted successfully; otherwise, false.

The TryParse(String, UInt64) method is like the Parse(String) method, except that it does not throw an exception if the conversion fails. This method eliminates the need to use exception handling to test for a FormatException if s is invalid and cannot be successfully parsed.

The s parameter should be the string representation of a decimal number in the following form:

[ws][sign]digits[ws]

Elements in square brackets ([ and ]) are optional. The following table describes each element.

Element

Description

ws

Optional white space.

sign

An optional sign. Valid sign characters are determined by the NumberFormatInfo.NegativeSign and NumberFormatInfo.PositiveSign properties of the current culture.

digits

A sequence of decimal digits ranging from 0 to 9.

The s parameter is interpreted by using the NumberStyles.Integer style. In addition to the decimal digits, only leading and trailing spaces with a leading sign are allowed. To explicitly define the style elements with the culture-specific formatting information that can be present in s, call the TryParse(String, NumberStyles, IFormatProvider, UInt64) method.

NoteNote

The string specified by the s parameter cannot contain any group separators or decimal separator, and it cannot have a fractional portion.

The s parameter is parsed using the formatting information in a NumberFormatInfo object initialized for the current system culture. For more information, see NumberFormatInfo.CurrentInfo.

This overload interprets all digits in the s parameter as decimal digits. To parse the string representation of a hexadecimal number, call the TryParse(String, NumberStyles, IFormatProvider, UInt64) overload instead.

The following example calls the TryParse(String, UInt64) method once for each element in a string array.

string[] numericStrings = { "1293.8", "+1671.7", "28347.", 
                            "   33113684  ", "(0)", "-0", "+1293617", 
                            "18-", "119870", "31,024", "  3127094 ",  
                            "00700000" };
ulong number;
foreach (string numericString in numericStrings)
{
   if (UInt64.TryParse(numericString, out number)) 
      Console.WriteLine("Converted '{0}' to {1}.", numericString, number);
   else
      Console.WriteLine("Cannot convert '{0}' to a UInt64.", numericString);
}
// The example displays the following output: 
//       Cannot convert '1293.8' to a UInt64. 
//       Cannot convert '+1671.7' to a UInt64. 
//       Cannot convert '28347.' to a UInt64. 
//       Converted '   33113684  ' to 33113684. 
//       Cannot convert '(0)' to a UInt64. 
//       Converted '-0' to 0. 
//       Converted '+1293617' to 1293617. 
//       Cannot convert '18-' to a UInt64. 
//       Converted '119870' to 119870. 
//       Cannot convert '31,024' to a UInt64. 
//       Converted '  3127094 ' to 3127094. 
//       Converted '0070000' to 70000.

.NET Framework

Supported in: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Portable Class Library

Supported in: Portable Class Library

.NET for Windows Store apps

Supported in: Windows 8

.NET for Windows Phone apps

Supported in: Windows Phone 8.1, Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Show:
© 2014 Microsoft