FormatException Clase

Definición

Excepción que se produce cuando el formato de un argumento no es válido o cuando una cadena de formato compuesto no tiene el formato correcto.The exception that is thrown when the format of an argument is invalid, or when a composite format string is not well formed.

public ref class FormatException : SystemException
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public class FormatException : SystemException
type FormatException = class
    inherit SystemException
Public Class FormatException
Inherits SystemException
Herencia
FormatException
Derivado
Atributos

Comentarios

Se FormatException puede producir una excepción por una de las razones siguientes:A FormatException exception can be thrown for one of the following reasons:

  • En una llamada a un método que convierte una cadena en algún otro tipo de datos, la cadena no se ajusta al patrón requerido.In a call to a method that converts a string to some other data type, the string doesn't conform to the required pattern. Esto suele ocurrir cuando se llama a algunos métodos Convert de la clase Parse y ParseExact a los métodos y de algunos tipos.This typically occurs when calling some methods of the Convert class and the Parse and ParseExact methods of some types.

    En la mayoría de los casos, especialmente si la cadena que se va a convertir es una entrada de un usuario o se lee de un try/catch archivo, se debe FormatException usar un bloque y controlar la excepción si la conversión no se realiza correctamente.In most cases, particularly if the string that you're converting is input by a user or read from a file, you should use a try/catch block and handle the FormatException exception if the conversion is unsuccessful. También puede reemplazar la llamada al método de conversión por una llamada a un TryParse método o TryParseExact , si existe uno.You can also replace the call to the conversion method with a call to a TryParse or TryParseExact method, if one exists. Sin embargo, FormatException una excepción que se produce cuando se intenta analizar una cadena predefinida o codificada de forma rígida indica un error del programa.However, a FormatException exception that is thrown when you're trying to parse a predefined or hard-coded string indicates a program error. En este caso, debe corregir el error en lugar de controlar la excepción.In this case, you should correct the error rather than handle the exception.

    La conversión de una cadena en los tipos siguientes del System espacio de nombres puede producir una FormatException excepción:The conversion of a string to the following types in the System namespace can throw a FormatException exception:

    • Boolean.Boolean. Los Boolean.Parse(String) métodos Convert.ToBoolean(String) y requieren que la cadena se convierta en "true", "true", "false" o "false".The Boolean.Parse(String) and Convert.ToBoolean(String) methods require the string to be converted to be "True", "true", "False", or "false". Cualquier otro valor produce una FormatException excepción.Any other value throws a FormatException exception.

    • DateTime y DateTimeOffset.DateTime and DateTimeOffset. Todos los datos de fecha y hora se interpretan en función de las convenciones de formato de una referencia cultural determinada: la referencia cultural del subproceso actual (o, en algunos casos, la referencia cultural del dominio de aplicación actual), la referencia cultural de todos los idiomas o una referencia cultural especificada.All date and time data is interpreted based on the formatting conventions of a particular culture: either the current thread culture (or, in some cases, the current application domain culture), the invariant culture, or a specified culture. Cuando se llama a DateTime.ParseExact(String, String, IFormatProvider, DateTimeStyles) los DateTimeOffset.ParseExact(String, String[], IFormatProvider, DateTimeStyles) métodos y, los datos de fecha y hora también deben ajustarse exactamente a un patrón especificado por una o varias cadenas de formato estándar o cadenas de formato personalizado que se proporcionan como argumentos en el llamada al método.When you call the DateTime.ParseExact(String, String, IFormatProvider, DateTimeStyles) and DateTimeOffset.ParseExact(String, String[], IFormatProvider, DateTimeStyles) methods, date and time data must also conform exactly to a pattern specified by one or more standard format strings or custom format strings that are provided as arguments in the method call. Si no se ajusta a un patrón esperado específico de la referencia cultural FormatException , se produce una excepción.If it doesn't conform to an expected culture-specific pattern, a FormatException exception is thrown. Esto significa que los datos de fecha y hora guardados en un formato específico de la referencia cultural en un sistema podrían no analizarse correctamente en otro sistema.This means that date and time data saved in a culture-specific format on one system might not parse successfully on another system.

      Para obtener más información sobre el análisis de fechas y horas, vea analizar cadenas de fecha y hora y la documentación del método que produjo la excepción.For more information about parsing dates and times, see Parsing Date and Time Strings and the documentation for the method that threw the exception.

    • GUID.GUIDs. La representación de cadena de un GUID debe constar de 32 dígitos hexadecimales (0-F) y debe estar en uno de los cinco formatos generados por el Guid.ToString método.The string representation of a GUID must consist of 32 hexadecimal digits (0-F), and must be in one of the five formats output by the Guid.ToString method. Para obtener más información, vea el método Guid.Parse.For more information, see the Guid.Parse method.

    • Tipos numéricos, incluidos todos los enteros con signo, enteros sin signo y tipos de punto flotante.Numeric types, including all signed integers, unsigned integers, and floating-point types. La cadena que se va a analizar debe constar de los dígitos latinos 0-9.The string to be parsed must consist of the Latin digits 0-9. También se puede permitir un signo positivo o negativo, un separador decimal, los separadores de grupos y el símbolo de divisa.A positive or negative sign, decimal separator, group separators, and currency symbol may also be permitted. Al intentar analizar una cadena que contiene cualquier otro carácter, siempre se produce FormatException una excepción.Trying to parse a string that contains any other character always throws a FormatException exception.

      Todas las cadenas numéricas se interpretan en función de las convenciones de formato de una referencia cultural determinada: la referencia cultural del subproceso actual (o, en algunos casos, la referencia cultural del dominio de aplicación actual), la referencia cultural de todos los idiomas o una referencia cultural especificada.All numeric strings are interpreted based on the formatting conventions of a particular culture: either the current thread culture (or, in some cases, the current application domain culture), the invariant culture, or a specified culture. Como resultado, se puede producir un error en una cadena numérica que se analiza mediante las convenciones de una referencia cultural al usar las convenciones de otra.As a result, a numeric string that is parsed by using the conventions of one culture might fail when using the conventions of another.

      Para obtener más información sobre el análisis de cadenas numéricas, vea analizar cadenas numéricas y la documentación del método específico que produjo la excepción.For more information about parsing numeric strings, see Parsing Numeric Strings and the documentation for the specific method that threw the exception.

    • Intervalos de tiempo.Time intervals. La cadena que se va a analizar debe estar en formato fijo que no tenga en cuenta las referencias culturales o en un formato dependiente de la referencia cultural definido por la referencia cultural del subproceso actual (o, en algunos casos, la referencia cultural del dominio de aplicación actual), la referencia cultural de todos los idiomas o una referencia cultural especificada.The string to be parsed must be either in fixed culture-insensitive format or in a culture-sensitive format defined by the current thread culture (or, in some cases, the current application domain culture), the invariant culture, or a specified culture. Si la cadena no tiene un formato adecuado, o si no hay, como mínimo, los componentes de días, horas y minutos del intervalo de tiempo, el método de análisis produce una FormatException excepción.If the string isn't in an appropriate format, or if, at the minimum, the days, hours, and minutes components of the time interval aren't present, the parsing method throws a FormatException exception. Para obtener más información, vea la documentación del TimeSpan método de análisis que produjo la excepción.For more information, see the documentation for the TimeSpan parsing method that threw the exception.

  • Un tipo implementa la IFormattable interfaz, que admite cadenas de formato que definen cómo se convierte un objeto en su representación de cadena y se usa una cadena de formato no válida.A type implements the IFormattable interface, which supports format strings that define how an object is converted to its string representation, and an invalid format string is used. Esto es más común en una operación de formato.This is most common in a formatting operation. En el ejemplo siguiente, la cadena de formato estándar "Q" se usa en una cadena de formato compuesto para dar formato a un número.In the following example, the "Q" standard format string is used in a composite format string to format a number. Sin embargo, "Q" no es una cadena de formato estándarválida.However, "Q" is not a valid standard format string.

    using System;
    
    public class Example
    {
       public static void Main()
       {
          decimal price = 169.32m;
          Console.WriteLine("The cost is {0:Q2}.", price);
       }
    }
    // The example displays the following output:
    //    Unhandled Exception: System.FormatException: Format specifier was invalid.
    //       at System.Number.FormatDecimal(Decimal value, String format, NumberFormatInfo info)
    //       at System.Decimal.ToString(String format, IFormatProvider provider)
    //       at System.Text.StringBuilder.AppendFormat(IFormatProvider provider, String format, Object[] args)
    //       at System.IO.TextWriter.WriteLine(String format, Object arg0)
    //       at System.IO.TextWriter.SyncTextWriter.WriteLine(String format, Object arg0)
    //       at Example.Main()
    
    Module Example
       Public Sub Main()
          Dim price As Decimal = 169.32d
          Console.WriteLine("The cost is {0:Q2}.", price)
       End Sub
    End Module
    ' The example displays the following output:
    '    Unhandled Exception: System.FormatException: Format specifier was invalid.
    '       at System.Number.FormatDecimal(Decimal value, String format, NumberFormatInfo info)
    '       at System.Decimal.ToString(String format, IFormatProvider provider)
    '       at System.Text.StringBuilder.AppendFormat(IFormatProvider provider, String format, Object[] args)
    '       at System.IO.TextWriter.WriteLine(String format, Object arg0)
    '       at System.IO.TextWriter.SyncTextWriter.WriteLine(String format, Object arg0)
    '       at Example.Main()
    

    Esta excepción es consecuencia de un error de codificación.This exception results from a coding error. Para corregir el error, quite la cadena de formato o sustituya una válida.To correct the error, either remove the format string or substitute a valid one. En el ejemplo siguiente se corrige el error reemplazando la cadena de formato no válida por la cadena de formato "C" (currency).The following example corrects the error by replacing the invalid format string with the "C" (currency) format string.

    using System;
    
    public class Example
    {
       public static void Main()
       {
          decimal price = 169.32m;
          Console.WriteLine("The cost is {0:C2}.", price);
       }
    }
    // The example displays the following output:
    //    The cost is $169.32.
    
    Module Example
       Public Sub Main()
          Dim price As Decimal = 169.32d
          Console.WriteLine("The cost is {0:C2}.", price)
       End Sub
    End Module
    ' The example displays the following output:
    '   The cost is $169.32.
    

    También FormatException se puede producir una excepción mediante el análisis de métodos, DateTime.ParseExact como Guid.ParseExacty, que requieren que la cadena se analice para ajustarse exactamente al patrón especificado por una cadena de formato.A FormatException exception can also be thrown by parsing methods, such as DateTime.ParseExact and Guid.ParseExact, that require the string to be parsed to conform exactly to the pattern specified by a format string. En el ejemplo siguiente, se espera que la representación de cadena de un GUID se ajuste al patrón especificado por la cadena de formato estándar "G".In the following example, the string representation of a GUID is expected to conform to the pattern specified by the "G" standard format string. Sin embargo, Guid la implementación de la IFormattable estructura de no admite la cadena de formato "G".However, the Guid structure's implementation of IFormattable does not support the "G" format string.

    using System;
    
    public class Example
    {
       public static void Main()
       {
          string guidString = "ba748d5c-ae5f-4cca-84e5-1ac5291c38cb";
          Console.WriteLine(Guid.ParseExact(guidString, "G"));
       }
    }
    // The example displays the following output:
    //    Unhandled Exception: System.FormatException: 
    //       Format String can be only "D", "d", "N", "n", "P", "p", "B", "b", "X" or "x".
    //       at System.Guid.ParseExact(String input, String format)
    //       at Example.Main()
    
    Module Example
       Public Sub Main()
          Dim guidString As String = "ba748d5c-ae5f-4cca-84e5-1ac5291c38cb"
          Console.WriteLine(Guid.ParseExact(guidString, "G"))
       End Sub
    End Module
    ' The example displays the following output:
    '    Unhandled Exception: System.FormatException: 
    '       Format String can be only "D", "d", "N", "n", "P", "p", "B", "b", "X" or "x".
    '       at System.Guid.ParseExact(String input, String format)
    '       at Example.Main()
    

    Esta excepción también se produce por un error de codificación.This exception also results from a coding error. Para corregirlo, llame a un método de análisis que no requiera un formato preciso DateTime.Parse , Guid.Parsecomo o, o sustituya una cadena de formato válida.To correct it, call a parsing method that doesn't require a precise format, such as DateTime.Parse or Guid.Parse, or substitute a valid format string. En el ejemplo siguiente se corrige el error llamando al Guid.Parse método.The following example corrects the error by calling the Guid.Parse method.

    using System;
    
    public class Example
    {
       public static void Main()
       {
          string guidString = "ba748d5c-ae5f-4cca-84e5-1ac5291c38cb";
          Console.WriteLine(Guid.Parse(guidString));
       }
    }
    // The example displays the following output:
    //    ba748d5c-ae5f-4cca-84e5-1ac5291c38cb
    
    Module Example
       Public Sub Main()
          Dim guidString As String = "ba748d5c-ae5f-4cca-84e5-1ac5291c38cb"
          Console.WriteLine(Guid.Parse(guidString))
       End Sub
    End Module
    ' The example displays the following output:
    '   ba748d5c-ae5f-4cca-84e5-1ac5291c38cb
    
  • Uno o más de los índices de los elementos de formato en una cadena de formato compuesto es mayor que los índices de los elementos de la lista de objetos o la matriz de parámetros.One or more of the indexes of the format items in a composite format string is greater than the indexes of the items in the object list or parameter array. En el ejemplo siguiente, el índice más grande de un elemento de formato en la cadena de formato es 3.In the following example, the largest index of a format item in the format string is 3. Dado que los índices de los elementos de la lista de objetos son de base cero, esta cadena de formato requeriría que la lista de objetos tenga cuatro elementos.Because the indexes of items in the object list are zero-based, this format string would require the object list to have four items. En su lugar, solo tiene tres, dat, tempy scale, por lo que el código produce una FormatException excepción en tiempo de ejecución:.Instead, it has only three, dat, temp, and scale, so the code results in a FormatException exception at run time:.

    using System;
    
    public class Example
    {
       public enum TemperatureScale 
       { Celsius, Fahrenheit, Kelvin }
    
       public static void Main()
       {
          String info = GetCurrentTemperature();
          Console.WriteLine(info);
       }
    
       private static String GetCurrentTemperature()
       {
          DateTime dat = DateTime.Now;
          Decimal temp = 20.6m;
          TemperatureScale scale = TemperatureScale.Celsius;
          String result;
          
          result = String.Format("At {0:t} on {1:D}, the temperature is {2:F1} {3:G}",
                                 dat, temp, scale);    
          return result;
       }
    }
    // The example displays output like the following:
    //    Unhandled Exception: System.FormatException: Format specifier was invalid.
    //       at System.Number.FormatDecimal(Decimal value, String format, NumberFormatInfo info)
    //       at System.Decimal.ToString(String format, IFormatProvider provider)
    //       at System.Text.StringBuilder.AppendFormat(IFormatProvider provider, String format, Object[] args)
    //       at System.String.Format(IFormatProvider provider, String format, Object[] args)
    //       at Example.Main()
    
    Module Example
       Public Enum TemperatureScale As Integer
          Celsius
          Fahrenheit
          Kelvin
       End Enum
    
       Public Sub Main()
          Dim info As String = GetCurrentTemperature()
          Console.WriteLine(info)
       End Sub
    
       Private Function GetCurrentTemperature() As String
          Dim dat As Date = Date.Now
          Dim temp As Decimal = 20.6d
          Dim scale As TemperatureScale = TemperatureScale.Celsius
          Dim result As String 
          
          result = String.Format("At {0:t} on {1:D}, the temperature is {2:F1} {3:G}",
                                 dat, temp, scale)    
          Return result
       End Function
    End Module
    ' The example displays output like the following:
    '    Unhandled Exception: System.FormatException: Format specifier was invalid.
    '       at System.Number.FormatDecimal(Decimal value, String format, NumberFormatInfo info)
    '       at System.Decimal.ToString(String format, IFormatProvider provider)
    '       at System.Text.StringBuilder.AppendFormat(IFormatProvider provider, String format, Object[] args)
    '       at System.String.Format(IFormatProvider provider, String format, Object[] args)
    '       at Example.Main()
    

    En este caso, la FormatException excepción es el resultado de un error del desarrollador.In this case, the FormatException exception is a result of developer error. Debe corregirse en lugar de controlarse en try/catch un bloque asegurándose de que todos los elementos de la lista de objetos se corresponden con el índice de un elemento de formato.It should be corrected rather than handled in a try/catch block by making sure that each item in the object list corresponds to the index of a format item. Para corregir este ejemplo, cambie el índice del segundo elemento de formato para hacer referencia a dat la variable y disminuya el índice de cada elemento de formato subsiguiente en uno.To correct this example, change the index of the second format item to refer to the dat variable, and decrement the index of each subsequent format item by one.

    using System;
    
    public class Example
    {
       public enum TemperatureScale 
       { Celsius, Fahrenheit, Kelvin }
    
       public static void Main()
       {
          String info = GetCurrentTemperature();
          Console.WriteLine(info);
       }
    
       private static String GetCurrentTemperature()
       {
          DateTime dat = DateTime.Now;
          Decimal temp = 20.6m;
          TemperatureScale scale = TemperatureScale.Celsius;
          String result;
          
          result = String.Format("At {0:t} on {0:D}, the temperature is {1:F1} {2:G}",
                                 dat, temp, scale);    
          return result;
       }
    }
    // The example displays output like the following:
    //    At 10:40 AM on Wednesday, June 04, 2014, the temperature is 20.6 Celsius
    
    Module Example
       Public Enum TemperatureScale As Integer
          Celsius
          Fahrenheit
          Kelvin
       End Enum
    
       Public Sub Main()
          Dim info As String = GetCurrentTemperature()
          Console.WriteLine(info)
       End Sub
    
       Private Function GetCurrentTemperature() As String
          Dim dat As Date = Date.Now
          Dim temp As Decimal = 20.6d
          Dim scale As TemperatureScale = TemperatureScale.Celsius
          Dim result As String 
          
          result = String.Format("At {0:t} on {0:D}, the temperature is {1:F1} {2:G}",
                                 dat, temp, scale)    
          Return result
       End Function
    End Module
    ' The example displays output like the following:
    '       At 10:40 AM on Wednesday, June 04, 2014, the temperature is 20.6 Celsius
    
  • La cadena de formato compuesto no tiene el formato correcto.The composite format string isn't well-formed. Cuando esto sucede, la FormatException excepción siempre es el resultado de un error del desarrollador.When this happens, the FormatException exception is always a result of developer error. Debe corregirse en lugar de administrarse en try/catch un bloque.It should be corrected rather than handled in a try/catch block.

    Al intentar incluir llaves literales en una cadena, como en el ejemplo siguiente, se producirá la excepción.Trying to include literal braces in a string, as the following example does, will throw the exception.

    result = String.Format("The text has {0} '{' characters and {1} '}' characters.",
                           nOpen, nClose);
    
    result = String.Format("The text has {0} '{' characters and {1} '}' characters.",
                           nOpen, nClose)
    

    La técnica recomendada para incluir llaves literales en una cadena de formato compuesto consiste en incluirlas en la lista de objetos y usar los elementos de formato para insertarlas en la cadena de resultado.The recommended technique for including literal braces in a composite format string is to include them in the object list and use format items to insert them into the result string. Por ejemplo, puede modificar la cadena de formato compuesto anterior como se muestra aquí.For example, you can modify the previous composite format string as shown here.

    string result;
    int nOpen = 1;
    int nClose = 2;
    result = String.Format("The text has {0} '{{' characters and {1} '}}' characters.",
                           nOpen, nClose);
    Console.WriteLine(result);
    
    result = String.Format("The text has {0} '{{' characters and {1} '}}' characters.",
                           nOpen, nClose)
    

    La excepción también se produce si la cadena de formato contiene un valor tipográfico.The exception is also thrown if your format string contains a typo. La siguiente llamada al String.Format método omite una llave de cierre y empareja una llave de apertura con un corchete de cierre.The following call to the String.Format method omits a closing brace and pairs an opening brace with a closing bracket.

    int n1 = 10;
    int n2 = 20;
    String result = String.Format("{0 + {1] = {2}", 
                                  n1, n2, n1 + n2);
    
    Dim n1 As Integer = 10
    Dim n2 As Integer = 20
    Dim result As String = String.Format("{0 + {1] = {2}", 
                                         n1, n2, n1 + n2)
    

    Para corregir el error, asegúrese de que todas las llaves de apertura y cierre se correspondan.To correct the error, ensure that all opening and closing braces correspond.

    String result = String.Format("{0} + {1} = {2}", 
                                  n1, n2, n1 + n2);
    
    Dim result As String = String.Format("{0} + {1} = {2}", 
                                         n1, n2, n1 + n2)
    
  • Ha proporcionado la lista de objetos en un método de formato compuesto como una matriz de parámetros fuertemente tipados y FormatException la excepción indica que el índice de uno o varios elementos de formato supera el número de argumentos de la lista de objetos.You've supplied the object list in a composite formatting method as a strongly typed parameter array, and the FormatException exception indicates that the index of one or more format items exceeds the number of arguments in the object list. Esto se produce porque no existe una conversión explícita entre tipos de matriz, por lo que en su lugar el compilador trata la matriz como un único argumento en lugar de como una matriz de parámetros.This occurs because no explicit conversion between array types exists, so instead the compiler treats the array as a single argument rather than as a parameter array. Por ejemplo, la siguiente llamada al Console.WriteLine(String, Object[]) método produce una FormatException excepción, aunque el índice más alto de los elementos de formato es 3, y la matriz de parámetros de Int32 tipo tiene cuatro elementos.For example, the following call to the Console.WriteLine(String, Object[]) method throws a FormatException exception, although the highest index of the format items is 3, and the parameter array of type Int32 has four elements.

    using System;
    using System.Collections.Generic;
    
    public class Example
    {
       public static void Main()
       {
          Random rnd = new Random();
          int[]  numbers = new int[4];
          int total = 0;
          for (int ctr = 0; ctr <= 2; ctr++) {
             int number = rnd.Next(1001);
             numbers[ctr] = number;
             total += number;
          }   
          numbers[3] = total;
          Console.WriteLine("{0} + {1} + {2} = {3}", numbers);   
       }
    }
    // The example displays the following output:
    //    Unhandled Exception: 
    //    System.FormatException: 
    //       Index (zero based) must be greater than or equal to zero and less than the size of the argument list.
    //       at System.Text.StringBuilder.AppendFormat(IFormatProvider provider, String format, Object[] args)
    //       at System.IO.TextWriter.WriteLine(String format, Object arg0)
    //       at System.IO.TextWriter.SyncTextWriter.WriteLine(String format, Object arg0)
    //       at Example.Main()
    
    Imports System.Collections.Generic
    
    Module Example
       Public Sub Main()
          Dim rnd As New Random()
          Dim numbers(3) As Integer
          Dim total As Integer = 0
          For ctr = 0 To 2
             Dim number As Integer = rnd.Next(1001)
             numbers(ctr) = number
             total += number
          Next
          numbers(3) = total
          Console.WriteLine("{0} + {1} + {2} = {3}", numbers)   
       End Sub
    End Module
    ' The example displays the following output:
    '    Unhandled Exception: 
    '    System.FormatException: 
    '       Index (zero based) must be greater than or equal to zero and less than the size of the argument list.
    '       at System.Text.StringBuilder.AppendFormat(IFormatProvider provider, String format, Object[] args)
    '       at System.IO.TextWriter.WriteLine(String format, Object arg0)
    '       at System.IO.TextWriter.SyncTextWriter.WriteLine(String format, Object arg0)
    '       at Example.Main()
    

    En lugar de controlar esta excepción, debe eliminar su causa.Instead of handling this exception, you should eliminate its cause. Dado que ni Visual Basic C# ni pueden convertir una matriz de enteros en una matriz de objetos, tendrá que realizar la conversión usted mismo antes de llamar al método de formato compuesto.Because neither Visual Basic nor C# can convert an integer array to an object array, you have to perform the conversion yourself before calling the composite formatting method. En el ejemplo siguiente se proporciona una implementación de.The following example provides one implementation.

    using System;
    using System.Collections.Generic;
    
    public class Example
    {
       public static void Main()
       {
          Random rnd = new Random();
          int[]  numbers = new int[4];
          int total = 0;
          for (int ctr = 0; ctr <= 2; ctr++) {
             int number = rnd.Next(1001);
             numbers[ctr] = number;
             total += number;
          }   
          numbers[3] = total;
          object[] values = new object[numbers.Length];
          numbers.CopyTo(values, 0);
          Console.WriteLine("{0} + {1} + {2} = {3}", values);   
       }
    }
    // The example displays output like the following:
    //        477 + 956 + 901 = 2334
    
    Imports System.Collections.Generic
    
    Module Example
       Public Sub Main()
          Dim rnd As New Random()
          Dim numbers(3) As Integer
          Dim total As Integer = 0
          For ctr = 0 To 2
             Dim number As Integer = rnd.Next(1001)
             numbers(ctr) = number
             total += number
          Next
          numbers(3) = total
          Dim values(numbers.Length - 1) As Object
          numbers.CopyTo(values, 0) 
          Console.WriteLine("{0} + {1} + {2} = {3}", values)   
       End Sub
    End Module
    ' The example displays output like the following:
    '       477 + 956 + 901 = 2334
    

FormatExceptionusa HRESULT COR_E_FORMAT, que tiene el valor 0x80131537.FormatException uses the HRESULT COR_E_FORMAT, which has the value 0x80131537.

La FormatException clase se deriva de Exception y no agrega miembros únicos.The FormatException class derives from Exception and adds no unique members. Para obtener una lista de valores de propiedad iniciales de una instancia de FormatException, consulte el FormatException constructores.For a list of initial property values for an instance of FormatException, see the FormatException constructors.

Constructores

FormatException()

Inicializa una nueva instancia de la clase FormatException.Initializes a new instance of the FormatException class.

FormatException(SerializationInfo, StreamingContext)

Inicializa una nueva instancia de la clase FormatException con datos serializados.Initializes a new instance of the FormatException class with serialized data.

FormatException(String)

Inicializa una nueva instancia de la clase FormatException con el mensaje de error especificado.Initializes a new instance of the FormatException class with a specified error message.

FormatException(String, Exception)

Inicializa una nueva instancia de la clase FormatException con el mensaje de error especificado y una referencia a la excepción interna que representa la causa de esta excepción.Initializes a new instance of the FormatException class with a specified error message and a reference to the inner exception that is the cause of this exception.

Propiedades

Data

Obtiene una colección de pares clave-valor que proporcionan más información definida por el usuario sobre la excepción.Gets a collection of key/value pairs that provide additional user-defined information about the exception.

(Heredado de Exception)
HelpLink

Obtiene o establece un vínculo al archivo de ayuda asociado a esta excepción.Gets or sets a link to the help file associated with this exception.

(Heredado de Exception)
HResult

Obtiene o establece HRESULT, un valor numérico codificado que se asigna a una excepción específica.Gets or sets HRESULT, a coded numerical value that is assigned to a specific exception.

(Heredado de Exception)
InnerException

Obtiene la instancia Exception que produjo la excepción actual.Gets the Exception instance that caused the current exception.

(Heredado de Exception)
Message

Obtiene un mensaje que describe la excepción actual.Gets a message that describes the current exception.

(Heredado de Exception)
Source

Devuelve o establece el nombre de la aplicación o del objeto que generó el error.Gets or sets the name of the application or the object that causes the error.

(Heredado de Exception)
StackTrace

Obtiene una representación de cadena de los marcos inmediatos en la pila de llamadas.Gets a string representation of the immediate frames on the call stack.

(Heredado de Exception)
TargetSite

Obtiene el método que produjo la excepción actual.Gets the method that throws the current exception.

(Heredado de Exception)

Métodos

Equals(Object)

Determina si el objeto especificado es igual al objeto actual.Determines whether the specified object is equal to the current object.

(Heredado de Object)
GetBaseException()

Cuando se reemplaza en una clase derivada, devuelve la clase Exception que representa la causa principal de una o más excepciones posteriores.When overridden in a derived class, returns the Exception that is the root cause of one or more subsequent exceptions.

(Heredado de Exception)
GetHashCode()

Sirve como la función hash predeterminada.Serves as the default hash function.

(Heredado de Object)
GetObjectData(SerializationInfo, StreamingContext)

Cuando se reemplaza en una clase derivada, establece SerializationInfo con información sobre la excepción.When overridden in a derived class, sets the SerializationInfo with information about the exception.

(Heredado de Exception)
GetType()

Obtiene el tipo de tiempo de ejecución de la instancia actual.Gets the runtime type of the current instance.

(Heredado de Exception)
MemberwiseClone()

Crea una copia superficial del objeto Object actual.Creates a shallow copy of the current Object.

(Heredado de Object)
ToString()

Crea y devuelve una representación de cadena de la excepción actual.Creates and returns a string representation of the current exception.

(Heredado de Exception)

Eventos

SerializeObjectState

Ocurre cuando una excepción se serializa para crear un objeto de estado de excepción que contenga datos serializados sobre la excepción.Occurs when an exception is serialized to create an exception state object that contains serialized data about the exception.

(Heredado de Exception)

Se aplica a

Consulte también: