Übersicht über Formatierung
Aktualisiert: November 2007
.NET Framework bietet einen anpassbaren Formatierungsmechanismus für allgemeine Zwecke, um einen Wert in eine für die Anzeige geeignete Zeichenfolge zu konvertieren. Ein numerischer Wert kann beispielsweise als hexadezimale, wissenschaftliche Notation oder als Reihe von Ziffern formatiert werden, die unter Verwendung eines vom Benutzer festgelegten Satzzeichens in Gruppen unterteilt wird. Datums- und Uhrzeitangaben können wie erforderlich für ein bestimmtes Land, eine bestimmte Region oder Kultur formatiert werden. Eine Enumerationskonstante kann als numerischer Wert oder Name formatiert werden.
Die Formatierung wird gesteuert, indem Sie eine Formatzeichenfolge und einen Formatanbieter festlegen oder die Standardeinstellungen verwenden. Eine Formatzeichenfolge enthält mindestens einen Formatbezeichner, der angibt, wie ein Wert konvertiert werden soll. Ein Formatanbieter liefert zusätzliche Steuerungs-, Ersetzungs- und Kulturinformationen, die für die Konvertierung eines bestimmten Typs benötigt werden.
Sie können die .NET Framework-Interpretation einer Formatzeichenfolge überschreiben. Dazu implementieren Sie die IFormattable-Schnittstelle, stellen einen eigenen Formatanbieter bereit, indem Sie die IFormatProvider-Schnittstelle implementieren, und führen eine eigene Formatierung aus, indem Sie die ICustomFormatter-Schnittstelle implementieren.
.NET Framework stellt ein als kombinierte Formatierung bezeichnetes Feature zur Verfügung, bei dem mindestens ein formatierter Wert mithilfe einer Formatzeichenfolge in eine Ergebniszeichenfolge eingebettet wird. Die Ergebniszeichenfolge kann weiter verarbeitet, in der Systemkonsole angezeigt oder in einen Stream geschrieben werden.
Formatbezeichner
.NET Framework definiert als Standard verwendete und benutzerdefinierte Formatbezeichner für die Formatierung von Zahlen, Datums- und Uhrzeitangaben sowie Enumerationen. Formatbezeichner werden von verschiedenen Methoden verwendet, die Ausgabezeichenfolgen formatieren, z. B. Console.WriteLine und den individuellen Überladungen der ToString-Methode bestimmter Typen sowie von einigen Methoden, die Eingabezeichenfolgen analysieren, z. B. Parse und DateTime.ParseExact.
Weitere Informationen über das Formatieren von numerischen Daten finden Sie unter Zahlenformatzeichenfolgen. Eine Tabelle mit häufig verwendeten Zahlenformatbezeichnern finden Sie unter Standardmäßige Zahlenformatzeichenfolgen. Eine Tabelle mit benutzerdefinierten Formatbezeichnern, die zum Erstellen eigener Formatzeichenfolgen verwendet werden können, finden Sie unter Benutzerdefinierte Zahlenformatzeichenfolgen.
Informationen über das Formatieren von Datums- und Uhrzeitangaben finden Sie unter Formatzeichenfolgen für Datum und Uhrzeit. Eine Tabelle mit häufig verwendeten Formatbezeichnern für Datums- und Uhrzeitangaben finden Sie unter DateTime-Standardformatzeichenfolgen. Eine Tabelle mit benutzerdefinierten Formatbezeichnern für Datums- und Uhrzeitangaben, die zum Erstellen eigener Formatzeichenfolgen verwendet werden können, finden Sie unter Benutzerdefinierte DateTime-Formatzeichenfolgen.
Informationen zum Ausführen bestimmter Formatierungen, wie dem Extrahieren des Wochentags aus einem bestimmten Datum oder dem Anzeigen des Datums unter Verwendung eines anderen Kalenders als dem gregorianischen Kalender finden Sie unter Gewusst-wie-Themen zur Formatierung.
Informationen über das Formatieren von Enumerationen und eine Tabelle mit Formatbezeichnern für Standardenumerationen finden Sie unter Enumerationsformatzeichenfolgen.
Verarbeitung und Formatbezeichner
Beim Formatieren wird der Wert eines Typs in eine Zeichenfolgenentsprechung konvertiert. Beim Verarbeiten, dem Umkehrvorgang der Formatierung, wird aus einer Zeichenfolgenentsprechung ein Datentyp erstellt. Die Verarbeitung (Parsing) wird über einen Formatbezeichner gesteuert. Bestimmte Methoden, z. B. DateTime.ParseExact, akzeptieren einen Formatbezeichnerparameter, der das erwartete Format der Zeichenfolgenentsprechung angibt. Weitere Informationen über das Verarbeiten finden Sie unter Verarbeiten von Zeichenfolgen.
"ToString" und Formatbezeichner
.NET Framework unterstützt eine Überladung der ToString-Standardmethode eines Typs durch eine spezialisierte ToString-Version. Mit der Standardversion wird eine rudimentäre Formatierung ausgeführt, und bei der spezialisierten Version wird durch einen Formatbezeichnerparameter angegeben, wie der Wert formatiert werden soll. Weitere Informationen finden Sie unter Formatierung von Basistypen und den Ausführungen zur IFormattable-Schnittstelle.
Formatanbieter
Formatanbieter stellen Informationen über Zeichen bereit, z. B. über das beim Formatieren von numerischen Zeichenfolgen als Dezimaltrennzeichen zu verwendende Zeichen oder das beim Formatieren eines DateTime-Objekts als Trennzeichen zu verwendende Zeichen. Formatanbieter definieren die von Formatbezeichnern beim Formatieren verwendeten Zeichen, aber nicht die Bezeichner selbst.
Ein Formatanbieter kann an die Überladung von ToString übergeben werden, die für die IFormattable-Schnittstelle erforderlich ist, oder durch die Methode zur Formatierung von Text vordefiniert werden, wenn kein Formatanbieter übergeben wird.
Wenn kein Formatanbieter übergeben wird, werden die Informationen hergeleitet oder von einem der Standardformatanbieter in .NET Framework abgerufen. Im Allgemeinen bieten Klassen, die IFormattable implementieren, ebenfalls Überladungen von ToString, die nur einen Formatbezeichner oder nur einen Formatanbieter akzeptieren. Die ToString-Standardmethode, die keine Parameter akzeptiert, wird von der Object-Klasse vererbt.
Informationen über den vordefinierten Formatanbieter für numerische Daten finden Sie unter NumberFormatInfo. Informationen über den vordefinierten Formatanbieter für Datums- und Uhrzeitangaben finden Sie unter DateTimeFormatInfo. Informationen über das Erstellen eines benutzerdefinierten Formatanbieters oder eines Formatanbieters für eine andere Kultur finden Sie unter CultureInfo, Formatieren für unterschiedliche Kulturen und Gewusst wie: Definieren und Verwenden von benutzerdefinierten numerischen Formatanbietern.
Kombinierte Formatierung
Das Feature für die kombinierte Formatierung in .NET Framework wird von Methoden wie String.Format und den Ausgabemethoden von System.Console und System.IO.TextWriter unterstützt und ersetzt jedes in eine Quellzeichenfolge eingebettete indizierte Formatelement durch die formatierte Entsprechung eines zugehörigen Elements in einer Werteliste. Weitere Informationen finden Sie unter Kombinierte Formatierung.
Siehe auch
Konzepte
Formatzeichenfolgen für Datum und Uhrzeit
Enumerationsformatzeichenfolgen
Anpassen von Formatzeichenfolgen
Gewusst-wie-Themen zur Formatierung