Freigeben über


Problembehandlung bei Ausnahmen: System.FormatException

Die FormatException-Ausnahme, die von einer Methode ausgelöst wird, die einen Typ analysiert oder formatiert, wenn das Format eines Arguments nicht den Parameterspezifikationen der Methode entspricht.

Verursachen von Formatausnahmen

Formatierung

Bei der Formattingwird eine Instanz einer Klasse, Struktur oder eines Enumerationswerts in die entsprechende Zeichenfolgendarstellung konvertiert. Die resultierende Zeichenfolge kann dann häufig Benutzern angezeigt oder verwendet werden, um den Status des Objekts zu speichern.

Z. B. übernimmt Int32.ToString(String) einen Zeichenfolgenparameter, der eine Standard- oder benutzerdefinierte Formatzeichenfolge bestimmt und eine Zeichenfolgendarstellung der Zahl zurückgibt. Die Methode löst eine FormatException aus. Wenn die Formatzeichenfolge ungültig ist oder nicht unterstützt wird, wird a ausgelöst.

Kombinierte Formatierung

Kombinierte Formatierung akzeptiert eine Liste von Objekten und eine kombinierte Formatzeichenfolge als Eingabe. Eine kombinierte Formatzeichenfolge besteht aus festgelegtem Text mit indizierten Platzhaltern, so genannten Formatelementen, die den Objekten in der Liste entsprechen. Der Formatierungsvorgang liefert eine Ergebniszeichenfolge, die sich aus dem ursprünglichen festgelegten Text und der Zeichenfolgendarstellung der Objekte in der Liste zusammensetzt.

String.Formatund Console.WriteLine sind Beispiele für Methoden der kombinierten Formatierung. Methoden, die kombinierte Formatierung verwenden, lösen eine FormatException aus, wenn die Formatzeichenfolge ungültig ist oder der Index eines Formatelements kleiner als 0 oder größer oder gleich der Anzahl der Argumente ist.

Analyse

Analyse ist der Prozess der Konvertierung einer Zeichenfolge, die einen.NET Framework-Basistyp in diesen Basistyp darstellt. Beispielsweise wird ein Analysevorgang zum Konvertieren einer Zeichenfolge in eine Gleitkommazahl oder einen Wert für Datum und Uhrzeit verwendet.

Beispielsweise konvertiert Int32.Parse(String) Parse die angegebene Zeichenfolgendarstellung einer Datums- und Uhrzeitangabe in die entsprechende DateTimemit kulturabhängigen Formatierungsinformationen im Parameter IformatProvider. Wenn die Zeichenfolge nicht das richtige Format hat, wird FormatException ausgelöst.

Vermeiden von FormatExceptions

Der Klassenreferenzartikel FormatException enthält die gängigen Ursachen und Lösungen von FormatException-Fehlern.

Die MSDN Library-Abschnitte Formatieren von Typen in .NET Framework und Analysieren von Zeichenfolgen in .NET Framework enthalten Informationen über die ordnungsgemäße Formatierung und Analyse von Typen.

Zusammengesetzte Formatierung

Kombinierte Formatierung

Numerische Typen

Standardmäßige Zahlenformatzeichenfolgen

Benutzerdefinierte Zahlenformatzeichenfolgen

Analysieren von numerischen Zeichenfolgen in .NET Framework

Datum und Uhrzeit und Timespan-Typen

Standard-Formatzeichenfolgen für Datum und Uhrzeit

Benutzerdefinierte Formatzeichenfolgen für Datum und Uhrzeit

TimeSpan-Standardformatzeichenfolgen

Benutzerdefinierte TimeSpan-Formatzeichenfolgen

Analysieren von Zeichenfolgen für Datum und Uhrzeit in .NET Framework

Andere Typen

Enumerationsformatzeichenfolgen

Analysieren anderer Zeichenfolgen in .NET Framework