C# | Convert.ToUInt64(String, IFormatProvider) Method
This method is used to converts the specified string representation of a number to an equivalent 64-bit unsigned integer, using the specified culture-specific formatting information.
Syntax:
public static ulong ToUInt64 (string value, IFormatProvider provider);
Parameters:
- value: It is a string that contains the number to convert.
- provider: It is an object that supplies culture-specific formatting information.
Return Value: This method returns a 64-bit unsigned integer that is equivalent to the number in value, or 0 (zero) if value is null.
Exceptions:
- FormatException: If the value does not consist of an optional sign followed by a sequence of digits (0 through 9).
- OverflowException: If the value represents a number that is less than MinValue or greater than MaxValue.
Below programs illustrate the use of Convert.ToUInt64(String, IFormatProvider) Method:
Example 1:
csharp
// C# program to demonstrate the // Convert.ToUInt64() Method using System; using System.Globalization; class GFG { // Main Method public static void Main() { try { // creating object of CultureInfo CultureInfo cultures = new CultureInfo("en-US"); // declaring and initializing String array string [] values = {"123456789012", "+123456789012", "18446744073709551615"}; // calling get() Method Console.WriteLine("Converted ulong value" + " from a specified string "); for ( int j = 0; j < values.Length; j++) { get (values[j], cultures); } } catch (FormatException e) { Console.WriteLine("\n"); Console.Write("Exception Thrown: "); Console.Write("{0}", e.GetType(), e.Message); } catch (OverflowException e) { Console.WriteLine("\n"); Console.Write("Exception Thrown: "); Console.Write("{0}", e.GetType(), e.Message); } } // Defining get() method public static void get ( string s, CultureInfo cultures) { // converting string to specified ulong ulong val = Convert.ToUInt64(s, cultures); // display the converted ulong value Console.Write(" {0}, ", val); } } |
Output:
Converted ulong value from a specified string 123456789012, 123456789012, 18446744073709551615,
Example 2: For FormatException
csharp
// C# program to demonstrate the // Convert.ToUInt64() Method using System; using System.Globalization; class GFG { // Main Method public static void Main() { try { // creating object of CultureInfo CultureInfo cultures = new CultureInfo("en-US"); // declaring and initializing String array string [] values = {"123456789012", "+123456789012", "18446744073709551615"}; // calling get() Method Console.WriteLine("Converted ulong value" + " of specified strings: "); for ( int j = 0; j < values.Length; j++) { get (values[j], cultures); } Console.WriteLine("\n"); string s = "123 456, 789"; Console.WriteLine("format of s is invalid "); // converting string to specified ulong long val = Convert.ToUInt64(s, cultures); // display the converted ulong value Console.Write(" {0}, ", val); } catch (FormatException e) { Console.Write("Exception Thrown: "); Console.Write("{0}", e.GetType(), e.Message); } catch (OverflowException e) { Console.Write("Exception Thrown: "); Console.Write("{0}", e.GetType(), e.Message); } } // Defining get() method public static void get ( string s, CultureInfo cultures) { // converting string to // specified ulong value ulong val = Convert.ToUInt64(s, cultures); // display the converted // ulong value Console.Write(" {0}, ", val); } } |
Output:
Converted ulong value of specified strings: 123456789012, 123456789012, 18446744073709551615, format of s is invalid Exception Thrown: System.FormatException
Example 3: For OverflowException
csharp
// C# program to demonstrate the // Convert.ToUInt64() Method using System; using System.Globalization; class GFG { // Main Method public static void Main() { try { // creating object of CultureInfo CultureInfo cultures = new CultureInfo("en-US"); // declaring and initializing String array string [] values = {"123456789012", "+123456789012", "18446744073709551615"}; // calling get() Method Console.WriteLine("Converted ulong value " + "of specified strings: "); for ( int j = 0; j < values.Length; j++) { get (values[j], cultures); } Console.WriteLine("\n"); string s = "-7922816251426433759354395033500000"; Console.WriteLine("s is less than the MinValue"); // converting string to specified ulong ulong val = Convert.ToUInt64(s, cultures); // display the converted ulong value Console.Write(" {0}, ", val); } catch (FormatException e) { Console.Write("Exception Thrown: "); Console.Write("{0}", e.GetType(), e.Message); } catch (OverflowException e) { Console.Write("Exception Thrown: "); Console.Write("{0}", e.GetType(), e.Message); } } // Defining get() method public static void get ( string s, CultureInfo cultures) { // converting string to // specified ulong value ulong val = Convert.ToUInt64(s, cultures); // display the converted ulong value Console.Write(" {0}, ", val); } } |
Output:
Converted ulong value of specified strings: 123456789012, 123456789012, 18446744073709551615, s is less than the MinValue Exception Thrown: System.OverflowException
Reference:
- https://docs.microsoft.com/en-us/dotnet/api/system.convert.touint64?view=netframework-4.7.2#System_Convert_ToUInt64_System_String_System_IFormatProvider_