FormatException FormatException FormatException FormatException Class

定義

引数の形式が無効である場合、または複合書式指定文字列が整形式でない場合にスローされる例外。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
継承
派生
属性

注釈

AFormatException次の理由の 1 つの例外がスローされます。A FormatException exception can be thrown for one of the following reasons:

  • 他のデータ型に文字列を変換するメソッドを呼び出し、文字列は、必要なパターンに適合していません。In a call to a method that converts a string to some other data type, the string doesn't conform to the required pattern. これのいくつかのメソッドを呼び出すときに通常発生する、ConvertクラスおよびParseParseExactいくつかの型のメソッド。This typically occurs when calling some methods of the Convert class and the Parse and ParseExact methods of some types.

    ほとんどの場合、変換する文字列をユーザーが入力またはファイルから読み取る場合に特に使用して、try/catchをブロックし、処理、FormatException変換が成功した場合は例外です。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. 呼び出して変換メソッドの呼び出しを置換することもできます、TryParseまたはTryParseExactメソッド、1 つが存在する場合。You can also replace the call to the conversion method with a call to a TryParse or TryParseExact method, if one exists. ただし、FormatException定義済みまたはハード コーディングされた文字列を解析しようとしている場合にスローされる例外は、プログラム エラーを示します。However, a FormatException exception that is thrown when you're trying to parse a predefined or hard-coded string indicates a program error. この場合、エラーを修正しないで、例外を処理します。In this case, you should correct the error rather than handle the exception.

    文字列のでは、次の型への変換、System名前空間は、スロー、FormatException例外。The conversion of a string to the following types in the System namespace can throw a FormatException exception:

    • BooleanBoolean. Boolean.Parse(String)Convert.ToBoolean(String)メソッドは、文字列"True"を"true"にある形式に変換する、"False"または"false"が必要です。The Boolean.Parse(String) and Convert.ToBoolean(String) methods require the string to be converted to be "True", "true", "False", or "false". その他の値をスローするFormatException例外。Any other value throws a FormatException exception.

    • DateTime および DateTimeOffsetDateTime and DateTimeOffset. すべての日付と時刻のデータは、特定のカルチャの書式指定規則に基づいて解釈されます。 現在のスレッド カルチャ (または、場合によっては、アプリケーション ドメインの現在のカルチャ)、インバリアント カルチャ、または指定されたカルチャ。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. 呼び出すと、DateTime.ParseExact(String, String, IFormatProvider, DateTimeStyles)DateTimeOffset.ParseExact(String, String[], IFormatProvider, DateTimeStyles)メソッド、日付と時刻のデータが従う必要がありますもまったくで 1 つまたは複数指定したパターンに標準書式指定文字列またはカスタム書式指定文字列メソッドの呼び出しの引数として用意されています。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. 想定したカルチャに固有のパターンに準拠していない場合、FormatException例外がスローされます。If it doesn't conform to an expected culture-specific pattern, a FormatException exception is thrown. つまり、1 つのシステム カルチャに固有の形式で保存日付と時刻のデータは、別のシステムで正常に解析できません可能性があります。This means that date and time data saved in a culture-specific format on one system might not parse successfully on another system.

      日付と時刻の解析の詳細については、次を参照してください。解析の日付と時刻文字列と例外をスローしたメソッドのドキュメント。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. GUID の文字列形式の 32 桁の 16 進数 (0 ~ F) で構成されている必要があり、によって 5 つの形式の出力のいずれかである必要があります、Guid.ToStringメソッド。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. 詳細については、Guid.Parse メソッドを参照してください。For more information, see the Guid.Parse method.

    • 数値型は、すべての符号付き整数、符号なし整数、浮動小数点型などです。Numeric types, including all signed integers, unsigned integers, and floating-point types. ラテンの数字 0 ~ 9、文字列を解析する必要がありますで構成されます。The string to be parsed must consist of the Latin digits 0-9. 正または負符号、小数点区切り文字、グループ区切り、および通貨記号を許可されても可能性があります。A positive or negative sign, decimal separator, group separators, and currency symbol may also be permitted. その他を含む文字列を解析しようとしています。 文字がスローされますを常に、FormatException例外。Trying to parse a string that contains any other character always throws a FormatException exception.

      すべての数値の文字列は、特定のカルチャの書式指定規則に基づいて解釈されます。 現在のスレッド カルチャ (または、場合によっては、アプリケーション ドメインの現在のカルチャ)、インバリアント カルチャ、または指定されたカルチャ。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. その結果、別の規則を使用する場合の 1 つのカルチャの規則を使用して解析される数値の文字列が失敗する可能性があります。As a result, a numeric string that is parsed by using the conventions of one culture might fail when using the conventions of another.

      数値文字列の解析の詳細については、次を参照してください。数値文字列の解析と例外をスローした特定のメソッドのドキュメント。For more information about parsing numeric strings, see Parsing Numeric Strings and the documentation for the specific method that threw the exception.

    • 時間間隔。Time intervals. 解析対象の文字列は固定のカルチャに依存しない形式で、または現在のスレッド カルチャによって (または、場合によっては、アプリケーション ドメインの現在のカルチャ) で定義されているカルチャを認識する形式である必要があります、インバリアント カルチャまたは指定されたカルチャ。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. 文字列がない場合は、最低限、日、時間数、または適切な形式で、時間間隔の分のコンポーネントがない場合は、解析メソッドがスローされます、FormatException例外。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. 詳細については、ドキュメントを参照して、TimeSpan例外をスローしたメソッドを解析します。For more information, see the documentation for the TimeSpan parsing method that threw the exception.

  • 型を実装する、IFormattableインターフェイス、オブジェクトを文字列表現に変換する方法を定義する書式指定文字列をサポートして、無効な形式の文字列を使用します。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. これは、書式設定操作で最も一般的です。This is most common in a formatting operation. 次の例では、"Q"標準書式指定文字列は数値の書式設定する複合書式指定文字列で使用されます。In the following example, the "Q" standard format string is used in a composite format string to format a number. ただし、"Q"は無効な標準書式指定文字列します。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()
    

    この例外は、コーディング エラーの結果です。This exception results from a coding error. エラーを修正するには、書式指定文字列を削除するか、有効なものに置き換えてください。To correct the error, either remove the format string or substitute a valid one. 次の例では、"C"(通貨) 書式指定文字列に無効な書式指定文字列を置き換えることにより、エラーを修正します。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.
    

    AFormatExceptionなどのメソッドを解析して例外をスローすることもDateTime.ParseExactGuid.ParseExact、書式設定文字列によって指定されたパターンに正確に準拠するように解析する文字列を必要とします。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. 次の例では、"G"標準書式指定文字列によって指定されたパターンに準拠するように、GUID の文字列表現が必要です。In the following example, the string representation of a GUID is expected to conform to the pattern specified by the "G" standard format string. ただし、Guid構造体の実装のIFormattable"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()
    

    また、この例外はコードのエラーからになります。This exception also results from a coding error. これを修正するなど、正確な形式を必要としない解析メソッドを呼び出すDateTime.ParseまたはGuid.Parse、有効な書式文字列に置き換えます。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. 次の例では、エラーを修正を呼び出して、Guid.Parseメソッド。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
    
  • 1 つ以上の書式項目のインデックスを複合書式指定文字列オブジェクトのリストまたはパラメーターの配列内の項目のインデックスよりも大きいです。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. 次の例では、書式指定文字列で書式指定項目の最大インデックスは 3 です。In the following example, the largest index of a format item in the format string is 3. オブジェクトの一覧で項目のインデックスが 0 から始まるため、この書式指定文字列には、次の 4 つの項目がオブジェクトの一覧が必要です。Because the indexes of items in the object list are zero-based, this format string would require the object list to have four items. 代わりに、3 種類のみがdattemp、およびscaleコードを実行しているため、FormatException実行時に例外: です。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()
    

    ここで、FormatException例外は開発者のエラーの結果です。In this case, the FormatException exception is a result of developer error. なくするように修正で処理される、try/catchをオブジェクトの一覧内の各項目は、書式指定項目のインデックスに対応しているかどうかを確実にブロックします。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. この例を修正するを参照する 2 番目の書式指定項目のインデックスを変更、dat変数、およびデクリメントを 1 つには、各後続の書式指定項目のインデックス。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
    
  • 複合書式指定文字列は、適切な形式ではありません。The composite format string isn't well-formed. この場合、FormatException例外は、開発者のエラーの結果では常にします。When this happens, the FormatException exception is always a result of developer error. なくするように修正で処理される、try/catchブロックします。It should be corrected rather than handled in a try/catch block.

    次の例は、例外がスローされます、文字列にリテラル中かっこを含めるしようとしています。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)
    

    複合書式指定文字列にリテラル中かっこを含めるための推奨される方法は、オブジェクトの一覧に追加し、書式項目を使用して、結果の文字列に挿入するには。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. たとえば、次に示すように以前の複合書式指定文字列を変更できます。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)
    

    例外は、書式指定文字列には、入力ミスが含まれている場合にもスローされます。The exception is also thrown if your format string contains a typo. 次の呼び出し、String.Formatメソッドは、右中かっこを省略し、右角かっこと中かっこのペアします。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)
    

    エラーを修正するには、すべてを開くと、終わりかっこと一致するを確認します。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)
    
  • 複合書式指定を厳密に型指定されたパラメーター配列としてのメソッドでオブジェクトの一覧を指定した、FormatException例外では、1 つまたは複数の書式項目のインデックスがオブジェクトのリストの引数の数を超えたことを示します。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. これには、配列型の間の明示的な変換が存在しないため、そのため、コンパイラはパラメーター配列ではなく 1 つの引数として、配列を扱いますが発生します。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. たとえば、次の呼び出し、Console.WriteLine(String, Object[])メソッドがスローされます、FormatException例外、書式指定項目の最も大きいインデックスが 3、および型のパラメーター配列Int32は 4 つの要素があります。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()
    

    この例外を処理する代わりに、その原因を排除する必要があります。Instead of handling this exception, you should eliminate its cause. Visual Basic や C# のどちらで整数の配列をオブジェクト配列に変換できるためは、複合書式指定メソッドを呼び出す前に自分で変換を実行する必要があります。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. 次の例では、1 つの実装を提供します。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
    

FormatException 値は 0x80131537 HRESULT COR_E_FORMAT を使用します。FormatException uses the HRESULT COR_E_FORMAT, which has the value 0x80131537.

FormatExceptionクラスから派生Exception一意のメンバーが追加されないとします。The FormatException class derives from Exception and adds no unique members. インスタンスの初期プロパティ値の一覧についてはFormatExceptionを参照してください、FormatExceptionコンス トラクター。For a list of initial property values for an instance of FormatException, see the FormatException constructors.

コンストラクター

FormatException() FormatException() FormatException() FormatException()

FormatException クラスの新しいインスタンスを初期化します。Initializes a new instance of the FormatException class.

FormatException(SerializationInfo, StreamingContext) FormatException(SerializationInfo, StreamingContext) FormatException(SerializationInfo, StreamingContext) FormatException(SerializationInfo, StreamingContext)

シリアル化したデータを使用して、FormatException クラスの新しいインスタンスを初期化します。Initializes a new instance of the FormatException class with serialized data.

FormatException(String) FormatException(String) FormatException(String) FormatException(String)

指定したエラー メッセージを使用して、FormatException クラスの新しいインスタンスを初期化します。Initializes a new instance of the FormatException class with a specified error message.

FormatException(String, Exception) FormatException(String, Exception) FormatException(String, Exception) FormatException(String, Exception)

指定したエラー メッセージおよびこの例外の原因となった内部例外への参照を使用して、FormatException クラスの新しいインスタンスを初期化します。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.

プロパティ

Data Data Data Data

例外に関する追加のユーザー定義情報を提供する、キー/値ペアのコレクションを取得します。Gets a collection of key/value pairs that provide additional user-defined information about the exception.

(Inherited from Exception)
HelpLink HelpLink HelpLink HelpLink

この例外に関連付けられているヘルプ ファイルへのリンクを取得または設定します。Gets or sets a link to the help file associated with this exception.

(Inherited from Exception)
HResult HResult HResult HResult

特定の例外に割り当てられているコード化数値である HRESULT を取得または設定します。Gets or sets HRESULT, a coded numerical value that is assigned to a specific exception.

(Inherited from Exception)
InnerException InnerException InnerException InnerException

現在の例外の原因となる Exception インスタンスを取得します。Gets the Exception instance that caused the current exception.

(Inherited from Exception)
Message Message Message Message

現在の例外を説明するメッセージを取得します。Gets a message that describes the current exception.

(Inherited from Exception)
Source Source Source Source

エラーの原因となるアプリケーションまたはオブジェクトの名前を取得または設定します。Gets or sets the name of the application or the object that causes the error.

(Inherited from Exception)
StackTrace StackTrace StackTrace StackTrace

呼び出し履歴で直前のフレームの文字列形式を取得します。Gets a string representation of the immediate frames on the call stack.

(Inherited from Exception)
TargetSite TargetSite TargetSite TargetSite

現在の例外がスローされたメソッドを取得します。Gets the method that throws the current exception.

(Inherited from Exception)

メソッド

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

指定したオブジェクトが、現在のオブジェクトと等しいかどうかを判断します。Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetBaseException() GetBaseException() GetBaseException() GetBaseException()

派生クラスでオーバーライドされた場合、それ以後に発生する 1 つ以上の例外の主要な原因である Exception を返します。When overridden in a derived class, returns the Exception that is the root cause of one or more subsequent exceptions.

(Inherited from Exception)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

既定のハッシュ関数として機能します。Serves as the default hash function.

(Inherited from Object)
GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext)

派生クラスでオーバーライドされた場合は、その例外に関する情報を使用して SerializationInfo を設定します。When overridden in a derived class, sets the SerializationInfo with information about the exception.

(Inherited from Exception)
GetType() GetType() GetType() GetType()

現在のインスタンスのランタイム型を取得します。Gets the runtime type of the current instance.

(Inherited from Exception)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

現在の例外の文字列形式を作成して返します。Creates and returns a string representation of the current exception.

(Inherited from Exception)

イベント

SerializeObjectState SerializeObjectState SerializeObjectState SerializeObjectState

例外がシリアル化され、例外に関するシリアル化されたデータを含む例外状態オブジェクトが作成されたときに発生します。Occurs when an exception is serialized to create an exception state object that contains serialized data about the exception.

(Inherited from Exception)

適用対象

こちらもご覧ください