C# | Método Convert.ToUInt64(String, IFormatProvider)

Este método se usa para convertir la representación de string especificada de un número en un entero sin signo de 64 bits equivalente, usando la información de formato específica de la referencia cultural especificada.

Sintaxis:

public static ulong ToUInt64 (string value, IFormatProvider provider);

Parámetros:

  • valor: Es una string que contiene el número a convertir.
  • proveedor: es un objeto que proporciona información de formato específica de la cultura.

Valor devuelto: este método devuelve un entero sin signo de 64 bits que es equivalente al número en valor, o 0 (cero) si el valor es nulo.

Excepciones:

  • FormatException: si el valor no consta de un signo opcional seguido de una secuencia de dígitos (0 a 9).
  • OverflowException: si el valor representa un número menor que MinValue o mayor que MaxValue .

Los siguientes programas ilustran el uso del método Convert.ToUInt64(String, IFormatProvider) :

Ejemplo 1:

// 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);
}
}
Producción:

Converted ulong value from a specified string 
 123456789012,  123456789012,  18446744073709551615,

Ejemplo 2: para FormatException

// 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.ToInt64(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);
}
}
Producción:

Converted ulong value of specified strings: 
 123456789012,  123456789012,  18446744073709551615, 

format of s is invalid 
Exception Thrown: System.FormatException

Ejemplo 3: para OverflowException

// 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);
}
}
Producción:

Converted ulong value of specified strings: 
 123456789012,  123456789012,  18446744073709551615, 

s is less than the MinValue
Exception Thrown: System.OverflowException

Referencia:

Publicación traducida automáticamente

Artículo escrito por RohitPrasad3 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *