Convert.ToString Methode

Definition

Konvertiert den angegebenen Wert in die entsprechende Zeichenfolgendarstellung.

Überlädt

ToString(Int32, Int32)

Konvertiert den Wert einer 32-Bit-Ganzzahl mit Vorzeichen in die entsprechende Zeichenfolgendarstellung in einer angegebenen Basis.

ToString(Decimal, IFormatProvider)

Konvertiert den Wert der angegebenen Dezimalzahl unter Verwendung der angegebenen kulturspezifischen Formatierungsinformationen in die entsprechende Zeichenfolgendarstellung.

ToString(Double, IFormatProvider)

Konvertiert den Wert der angegebenen Gleitkommazahl mit doppelter Genauigkeit in die entsprechende Zeichenfolgendarstellung.

ToString(Int16, IFormatProvider)

Konvertiert den Wert der angegebenen 16-Bit-Ganzzahl mit Vorzeichen unter Verwendung der angegebenen kulturspezifischen Formatierungsinformationen in die entsprechende Zeichenfolgendarstellung.

ToString(Int16, Int32)

Konvertiert den Wert einer 16-Bit-Ganzzahl mit Vorzeichen in die entsprechende Zeichenfolgendarstellung in einer angegebenen Basis.

ToString(Int32, IFormatProvider)

Konvertiert den Wert der angegebenen 32-Bit-Ganzzahl mit Vorzeichen unter Verwendung der angegebenen kulturspezifischen Formatierungsinformationen in die entsprechende Zeichenfolgendarstellung.

ToString(Int64, IFormatProvider)

Konvertiert den Wert der angegebenen 64-Bit-Ganzzahl mit Vorzeichen unter Verwendung der angegebenen kulturspezifischen Formatierungsinformationen in die entsprechende Zeichenfolgendarstellung.

ToString(UInt64)

Konvertiert den Wert der angegebenen 64-Bit-Ganzzahl ohne Vorzeichen in die entsprechende Zeichenfolgendarstellung.

ToString(Object, IFormatProvider)

Konvertiert den Wert des angegebenen Objekts unter Verwendung der angegebenen kulturspezifischen Formatierungsinformationen in die entsprechende Zeichenfolgendarstellung.

ToString(SByte, IFormatProvider)

Konvertiert den Wert der angegebenen 8-Bit-Ganzzahl mit Vorzeichen unter Verwendung der angegebenen kulturspezifischen Formatierungsinformationen in die entsprechende Zeichenfolgendarstellung.

ToString(Single, IFormatProvider)

Konvertiert den Wert der angegebenen Gleitkommazahl mit einfacher Genauigkeit unter Verwendung der angegebenen kulturspezifischen Formatierungsinformationen in die entsprechende Zeichenfolgendarstellung.

ToString(String, IFormatProvider)

Gibt die angegebene Zeichenfolgeninstanz zurück. Es wird keine wirkliche Konvertierung durchgeführt.

ToString(UInt16, IFormatProvider)

Konvertiert den Wert der angegebenen 16-Bit-Ganzzahl ohne Vorzeichen unter Verwendung der angegebenen kulturspezifischen Formatierungsinformationen in die entsprechende Zeichenfolgendarstellung.

ToString(UInt32, IFormatProvider)

Konvertiert den Wert der angegebenen 32-Bit-Ganzzahl ohne Vorzeichen unter Verwendung der angegebenen kulturspezifischen Formatierungsinformationen in die entsprechende Zeichenfolgendarstellung.

ToString(UInt64, IFormatProvider)

Konvertiert den Wert der angegebenen 64-Bit-Ganzzahl ohne Vorzeichen unter Verwendung der angegebenen kulturspezifischen Formatierungsinformationen in die entsprechende Zeichenfolgendarstellung.

ToString(DateTime, IFormatProvider)

Konvertiert den Wert der angegebenen DateTime unter Verwendung der angegebenen kulturspezifischen Formatierungsinformationen in die entsprechende Zeichenfolgendarstellung.

ToString(Int64, Int32)

Konvertiert den Wert einer 64-Bit-Ganzzahl mit Vorzeichen in die entsprechende Zeichenfolgendarstellung in einer angegebenen Basis.

ToString(Char, IFormatProvider)

Konvertiert den Wert des angegebenen Unicode-Zeichens unter Verwendung der angegebenen kulturspezifischen Formatierungsinformationen in die entsprechende Zeichenfolgendarstellung.

ToString(UInt32)

Konvertiert den Wert der angegebenen 32-Bit-Ganzzahl ohne Vorzeichen in die entsprechende Zeichenfolgendarstellung.

ToString(Byte, IFormatProvider)

Konvertiert den Wert der angegebenen 8-Bit-Ganzzahl ohne Vorzeichen unter Verwendung der angegebenen kulturspezifischen Formatierungsinformationen in die entsprechende Zeichenfolgendarstellung.

ToString(Boolean)

Konvertiert den angegebenen booleschen Wert in die entsprechende Zeichenfolgendarstellung.

ToString(Byte)

Konvertiert den Wert der angegebenen 8-Bit-Ganzzahl ohne Vorzeichen in die entsprechende Zeichenfolgendarstellung.

ToString(Char)

Konvertiert den Wert des angegebenen Unicode-Zeichens in die entsprechende Zeichenfolgendarstellung.

ToString(DateTime)

Konvertiert den Wert der angegebenen DateTime in die entsprechende Zeichenfolgendarstellung.

ToString(Double)

Konvertiert den Wert der angegebenen Gleitkommazahl mit doppelter Genauigkeit in die entsprechende Zeichenfolgendarstellung.

ToString(Int16)

Konvertiert den Wert der angegebenen 16-Bit-Ganzzahl mit Vorzeichen in die entsprechende Zeichenfolgendarstellung.

ToString(Int32)

Konvertiert den Wert der angegebenen 32-Bit-Ganzzahl mit Vorzeichen in die entsprechende Zeichenfolgendarstellung.

ToString(Decimal)

Konvertiert den Wert der angegebenen Dezimalzahl in die entsprechende Zeichenfolgendarstellung.

ToString(Object)

Konvertiert den Wert des angegebenen Objekts in die entsprechende Zeichenfolgendarstellung.

ToString(SByte)

Konvertiert den Wert der angegebenen 8-Bit-Ganzzahl mit Vorzeichen in die entsprechende Zeichenfolgendarstellung.

ToString(Single)

Konvertiert den Wert der angegebenen Gleitkommazahl mit einfacher Genauigkeit in die entsprechende Zeichenfolgendarstellung.

ToString(String)

Gibt die angegebene Zeichenfolgeninstanz zurück. Es wird keine wirkliche Konvertierung durchgeführt.

ToString(UInt16)

Konvertiert den Wert der angegebenen 16-Bit-Ganzzahl ohne Vorzeichen in die entsprechende Zeichenfolgendarstellung.

ToString(Byte, Int32)

Konvertiert den Wert einer 8-Bit-Ganzzahl ohne Vorzeichen in die entsprechende Zeichenfolgendarstellung in einer angegebenen Basis.

ToString(Boolean, IFormatProvider)

Konvertiert den angegebenen booleschen Wert in die entsprechende Zeichenfolgendarstellung.

ToString(Int64)

Konvertiert den Wert der angegebenen 64-Bit-Ganzzahl mit Vorzeichen in die entsprechende Zeichenfolgendarstellung.

ToString(Int32, Int32)

Konvertiert den Wert einer 32-Bit-Ganzzahl mit Vorzeichen in die entsprechende Zeichenfolgendarstellung in einer angegebenen Basis.

public:
 static System::String ^ ToString(int value, int toBase);
public static string ToString (int value, int toBase);
static member ToString : int * int -> string
Public Shared Function ToString (value As Integer, toBase As Integer) As String

Parameter

value
Int32

Die zu konvertierende 32-Bit-Ganzzahl mit Vorzeichen.

toBase
Int32

Die Basis des Rückgabewerts, die 2, 8, 10 oder 16 sein muss.

Gibt zurück

String

Die Zeichenfolgendarstellung von value zur Basis toBase.

Ausnahmen

toBase ist nicht 2, 8, 10 oder 16.

Beispiele

Im folgenden Beispiel wird jedes Element in einem ganzzahligen Array in seine entsprechende binäre, hexadezimale, dezimale, dezimale und hexadezimale Zeichenfolgendarstellung konvertiert.

int[] bases = { 2, 8, 10, 16};
int[] numbers = { Int32.MinValue, -19327543, -13621, -18, 12,
                             19142, Int32.MaxValue };

foreach (int baseValue in bases)
{
   Console.WriteLine("Base {0} conversion:", baseValue);
   foreach (int number in numbers)
   {
      Console.WriteLine("   {0,-15}  -->  0x{1}",
                        number, Convert.ToString(number, baseValue));
   }
}
// The example displays the following output:
//    Base 2 conversion:
//       -2147483648      -->  0x10000000000000000000000000000000
//       -19327543        -->  0x11111110110110010001010111001001
//       -13621           -->  0x11111111111111111100101011001011
//       -18              -->  0x11111111111111111111111111101110
//       12               -->  0x1100
//       19142            -->  0x100101011000110
//       2147483647       -->  0x1111111111111111111111111111111
//    Base 8 conversion:
//       -2147483648      -->  0x20000000000
//       -19327543        -->  0x37666212711
//       -13621           -->  0x37777745313
//       -18              -->  0x37777777756
//       12               -->  0x14
//       19142            -->  0x45306
//       2147483647       -->  0x17777777777
//    Base 10 conversion:
//       -2147483648      -->  0x-2147483648
//       -19327543        -->  0x-19327543
//       -13621           -->  0x-13621
//       -18              -->  0x-18
//       12               -->  0x12
//       19142            -->  0x19142
//       2147483647       -->  0x2147483647
//    Base 16 conversion:
//       -2147483648      -->  0x80000000
//       -19327543        -->  0xfed915c9
//       -13621           -->  0xffffcacb
//       -18              -->  0xffffffee
//       12               -->  0xc
//       19142            -->  0x4ac6
//       2147483647       -->  0x7fffffff
let bases = [| 2; 8; 10; 16 |]
let numbers = 
    [| Int32.MinValue; -19327543; -13621; -18; 12; 19142; Int32.MaxValue |]

for baseValue in bases do
    printfn $"Base {baseValue} conversion:"
    for number in numbers do
        printfn $"   {number,-15}  -->  0x{Convert.ToString(number, baseValue)}"
// The example displays the following output:
//    Base 2 conversion:
//       -2147483648      -->  0x10000000000000000000000000000000
//       -19327543        -->  0x11111110110110010001010111001001
//       -13621           -->  0x11111111111111111100101011001011
//       -18              -->  0x11111111111111111111111111101110
//       12               -->  0x1100
//       19142            -->  0x100101011000110
//       2147483647       -->  0x1111111111111111111111111111111
//    Base 8 conversion:
//       -2147483648      -->  0x20000000000
//       -19327543        -->  0x37666212711
//       -13621           -->  0x37777745313
//       -18              -->  0x37777777756
//       12               -->  0x14
//       19142            -->  0x45306
//       2147483647       -->  0x17777777777
//    Base 10 conversion:
//       -2147483648      -->  0x-2147483648
//       -19327543        -->  0x-19327543
//       -13621           -->  0x-13621
//       -18              -->  0x-18
//       12               -->  0x12
//       19142            -->  0x19142
//       2147483647       -->  0x2147483647
//    Base 16 conversion:
//       -2147483648      -->  0x80000000
//       -19327543        -->  0xfed915c9
//       -13621           -->  0xffffcacb
//       -18              -->  0xffffffee
//       12               -->  0xc
//       19142            -->  0x4ac6
//       2147483647       -->  0x7fffffff
Dim bases() As Integer = { 2, 8, 10, 16}
Dim numbers() As Integer = { Int32.MinValue, -19327543, -13621, -18, 12, _
                             19142, Int32.MaxValue }

For Each base As Integer In bases
   Console.WriteLine("Base {0} conversion:", base)
   For Each number As Integer In numbers
      Console.WriteLine("   {0,-15}  -->  0x{1}", _
                        number, Convert.ToString(number, base))
   Next
Next
' The example displays the following output:
'    Base 2 conversion:
'       -2147483648      -->  0x10000000000000000000000000000000
'       -19327543        -->  0x11111110110110010001010111001001
'       -13621           -->  0x11111111111111111100101011001011
'       -18              -->  0x11111111111111111111111111101110
'       12               -->  0x1100
'       19142            -->  0x100101011000110
'       2147483647       -->  0x1111111111111111111111111111111
'    Base 8 conversion:
'       -2147483648      -->  0x20000000000
'       -19327543        -->  0x37666212711
'       -13621           -->  0x37777745313
'       -18              -->  0x37777777756
'       12               -->  0x14
'       19142            -->  0x45306
'       2147483647       -->  0x17777777777
'    Base 10 conversion:
'       -2147483648      -->  0x-2147483648
'       -19327543        -->  0x-19327543
'       -13621           -->  0x-13621
'       -18              -->  0x-18
'       12               -->  0x12
'       19142            -->  0x19142
'       2147483647       -->  0x2147483647
'    Base 16 conversion:
'       -2147483648      -->  0x80000000
'       -19327543        -->  0xfed915c9
'       -13621           -->  0xffffcacb
'       -18              -->  0xffffffee
'       12               -->  0xc
'       19142            -->  0x4ac6
'       2147483647       -->  0x7fffffff
let bases = [2; 8; 10; 16]
let numbers = [ Int32.MinValue; -19327543; -13621; -18; 12; 19142; Int32.MaxValue ]

for baseValue in bases do
    printfn "Base %i conversion:" baseValue
    for number in numbers do
        printfn "   % -15i  -->  0x%s" number (Convert.ToString (number, baseValue))
// The example displays the following output:
//     Base 2 conversion:
//        -2147483648      -->  0x10000000000000000000000000000000
//        -19327543        -->  0x11111110110110010001010111001001
//        -13621           -->  0x11111111111111111100101011001011
//        -18              -->  0x11111111111111111111111111101110
//         12              -->  0x1100
//         19142           -->  0x100101011000110
//         2147483647      -->  0x1111111111111111111111111111111
//     Base 8 conversion:
//        -2147483648      -->  0x20000000000
//        -19327543        -->  0x37666212711
//        -13621           -->  0x37777745313
//        -18              -->  0x37777777756
//         12              -->  0x14
//         19142           -->  0x45306
//         2147483647      -->  0x17777777777
//     Base 10 conversion:
//        -2147483648      -->  0x-2147483648
//        -19327543        -->  0x-19327543
//        -13621           -->  0x-13621
//        -18              -->  0x-18
//         12              -->  0x12
//         19142           -->  0x19142
//         2147483647      -->  0x2147483647
//     Base 16 conversion:
//        -2147483648      -->  0x80000000
//        -19327543        -->  0xfed915c9
//        -13621           -->  0xffffcacb
//        -18              -->  0xffffffee
//         12              -->  0xc
//         19142           -->  0x4ac6
//         2147483647      -->  0x7fffffff

Hinweise

Wenn value die Zeichenfolge positiv ist und toBase 2, 8 oder 16 ist, verwendet die zurückgegebene Zeichenfolge die Zeichen- und Größendarstellung. Wenn value dies negativ ist und toBase 2, 8 oder 16 ist, verwendet die zurückgegebene Zeichenfolge zwei Ergänzungsdarstellungen. Dies bedeutet, dass das Hochreihenfolgen-Bit des höchsten Bytes (Bit 31) als Zeichenbit interpretiert wird. Wenn die ToString(Int32, Int32) Methode aufgerufen wird, um eine Zeichenfolge zu erstellen, die später in eine Zahl konvertiert wird, sollte eine entsprechende Methode, die davon ausgeht, dass eine ähnliche numerische Darstellung aufgerufen werden soll, um die Konvertierung auszuführen. Solche Methoden umfassen Convert.ToInt32(String, Int32) und Int32.Parse(String, NumberStyles).

Gilt für

ToString(Decimal, IFormatProvider)

Konvertiert den Wert der angegebenen Dezimalzahl unter Verwendung der angegebenen kulturspezifischen Formatierungsinformationen in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(System::Decimal value, IFormatProvider ^ provider);
public static string ToString (decimal value, IFormatProvider provider);
public static string ToString (decimal value, IFormatProvider? provider);
static member ToString : decimal * IFormatProvider -> string
Public Shared Function ToString (value As Decimal, provider As IFormatProvider) As String

Parameter

value
Decimal

Die zu konvertierende Dezimalzahl.

provider
IFormatProvider

Ein Objekt, das kulturspezifische Formatierungsinformationen bereitstellt.

Gibt zurück

String

Eine Zeichenfolgendarstellung von value.

Beispiele

Im folgenden Beispiel werden jedes Element in einem Array von Decimal Werten in die entsprechende Zeichenfolgendarstellung in vier verschiedenen Kulturen konvertiert.

// Define an array of numbers to display.
decimal[] numbers = { 1734231911290.16m, -17394.32921m,
                      3193.23m, 98012368321.684m };
// Define the culture names used to display them.
string[] cultureNames = { "en-US", "fr-FR", "ja-JP", "ru-RU" };

foreach (decimal number in numbers)
{
   Console.WriteLine("{0}:", Convert.ToString(number,
                             System.Globalization.CultureInfo.InvariantCulture));
   foreach (string cultureName in cultureNames)
   {
      System.Globalization.CultureInfo culture = new System.Globalization.CultureInfo(cultureName);
      Console.WriteLine("   {0}: {1,20}",
                        culture.Name, Convert.ToString(number, culture));
   }
   Console.WriteLine();
}
// The example displays the following output:
//    1734231911290.16:
//       en-US:     1734231911290.16
//       fr-FR:     1734231911290,16
//       ja-JP:     1734231911290.16
//       ru-RU:     1734231911290,16
//
//    -17394.32921:
//       en-US:         -17394.32921
//       fr-FR:         -17394,32921
//       ja-JP:         -17394.32921
//       ru-RU:         -17394,32921
//
//    3193.23:
//       en-US:              3193.23
//       fr-FR:              3193,23
//       ja-JP:              3193.23
//       ru-RU:              3193,23
//
//    98012368321.684:
//       en-US:      98012368321.684
//       fr-FR:      98012368321,684
//       ja-JP:      98012368321.684
//       ru-RU:      98012368321,684
// Define an array of numbers to display.
let numbers = 
    [| 1734231911290.16m; -17394.32921m; 3193.23m; 98012368321.684m |]
// Define the culture names used to display them.
let cultureNames = [| "en-US"; "fr-FR"; "ja-JP"; "ru-RU" |]

for number in numbers do
    printfn $"{Convert.ToString(number, CultureInfo.InvariantCulture)}:"
    for cultureName in cultureNames do
        let culture = CultureInfo cultureName
        printfn $"   {culture.Name}: {Convert.ToString(number, culture),20}"
    printfn ""
// The example displays the following output:
//    1734231911290.16:
//       en-US:     1734231911290.16
//       fr-FR:     1734231911290,16
//       ja-JP:     1734231911290.16
//       ru-RU:     1734231911290,16
//
//    -17394.32921:
//       en-US:         -17394.32921
//       fr-FR:         -17394,32921
//       ja-JP:         -17394.32921
//       ru-RU:         -17394,32921
//
//    3193.23:
//       en-US:              3193.23
//       fr-FR:              3193,23
//       ja-JP:              3193.23
//       ru-RU:              3193,23
//
//    98012368321.684:
//       en-US:      98012368321.684
//       fr-FR:      98012368321,684
//       ja-JP:      98012368321.684
//       ru-RU:      98012368321,684
' Define an array of numbers to display.
Dim numbers() As Decimal = { 1734231911290.16d, -17394.32921d, _
                             3193.23d, 98012368321.684d }
' Define the culture names used to display them.
Dim cultureNames() As String = { "en-US", "fr-FR", "ja-JP", "ru-RU" }

For Each number As Decimal In numbers
   Console.WriteLine("{0}:", Convert.ToString(number, _
                             System.Globalization.CultureInfo.InvariantCulture))
   For Each cultureName As String In cultureNames
      Dim culture As New System.Globalization.CultureInfo(cultureName)
      Console.WriteLine("   {0}: {1,20}", _
                        culture.Name, Convert.ToString(number, culture))
   Next
   Console.WriteLine()
Next   
' The example displays the following output:
'    1734231911290.16:
'       en-US:     1734231911290.16
'       fr-FR:     1734231911290,16
'       ja-JP:     1734231911290.16
'       ru-RU:     1734231911290,16
'    
'    -17394.32921:
'       en-US:         -17394.32921
'       fr-FR:         -17394,32921
'       ja-JP:         -17394.32921
'       ru-RU:         -17394,32921
'    
'    3193.23:
'       en-US:              3193.23
'       fr-FR:              3193,23
'       ja-JP:              3193.23
'       ru-RU:              3193,23
'    
'    98012368321.684:
'       en-US:      98012368321.684
'       fr-FR:      98012368321,684
'       ja-JP:      98012368321.684
'       ru-RU:      98012368321,684

Hinweise

Diese Implementierung ist identisch mit Decimal.ToString(IFormatProvider).

Gilt für

ToString(Double, IFormatProvider)

Konvertiert den Wert der angegebenen Gleitkommazahl mit doppelter Genauigkeit in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(double value, IFormatProvider ^ provider);
public static string ToString (double value, IFormatProvider provider);
public static string ToString (double value, IFormatProvider? provider);
static member ToString : double * IFormatProvider -> string
Public Shared Function ToString (value As Double, provider As IFormatProvider) As String

Parameter

value
Double

Die zu konvertierende Gleitkommazahl mit doppelter Genauigkeit.

provider
IFormatProvider

Ein Objekt, das kulturspezifische Formatierungsinformationen bereitstellt.

Gibt zurück

String

Eine Zeichenfolgendarstellung von value.

Beispiele

Im folgenden Beispiel werden jedes Element in einem Array von Double Werten in die entsprechende Zeichenfolgendarstellung in vier verschiedenen Kulturen konvertiert.

// Define an array of numbers to display.
double[] numbers = { -1.5345e16, -123.4321, 19092.123, 1.1734231911290e16 };
// Define the culture names used to display them.
string[] cultureNames = { "en-US", "fr-FR", "ja-JP", "ru-RU" };

foreach (double number in numbers)
{
   Console.WriteLine("{0}:", Convert.ToString(number,
                             System.Globalization.CultureInfo.InvariantCulture));
   foreach (string cultureName in cultureNames)
   {
      System.Globalization.CultureInfo culture = new System.Globalization.CultureInfo(cultureName);
      Console.WriteLine("   {0}: {1,20}",
                        culture.Name, Convert.ToString(number, culture));
   }
   Console.WriteLine();
}
// The example displays the following output:
//    -1.5345E+16:
//       en-US:          -1.5345E+16
//       fr-FR:          -1,5345E+16
//       ja-JP:          -1.5345E+16
//       ru-RU:          -1,5345E+16
//
//    -123.4321:
//       en-US:            -123.4321
//       fr-FR:            -123,4321
//       ja-JP:            -123.4321
//       ru-RU:            -123,4321
//
//    19092.123:
//       en-US:            19092.123
//       fr-FR:            19092,123
//       ja-JP:            19092.123
//       ru-RU:            19092,123
//
//    1.173423191129E+16:
//       en-US:   1.173423191129E+16
//       fr-FR:   1,173423191129E+16
//       ja-JP:   1.173423191129E+16
//       ru-RU:   1,173423191129E+16
// Define an array of numbers to display.
let numbers = [| -1.5345e16; -123.4321; 19092.123; 1.1734231911290e16 |]
// Define the culture names used to display them.
let cultureNames = [| "en-US"; "fr-FR"; "ja-JP"; "ru-RU" |]

for number in numbers do
    printfn $"{Convert.ToString(number, CultureInfo.InvariantCulture)}:"
    for cultureName in cultureNames do
        let culture = CultureInfo cultureName
        printfn "   {culture.Name}: {Convert.ToString(number, culture),20}"
    printfn ""
// The example displays the following output:
//    -1.5345E+16:
//       en-US:          -1.5345E+16
//       fr-FR:          -1,5345E+16
//       ja-JP:          -1.5345E+16
//       ru-RU:          -1,5345E+16
//
//    -123.4321:
//       en-US:            -123.4321
//       fr-FR:            -123,4321
//       ja-JP:            -123.4321
//       ru-RU:            -123,4321
//
//    19092.123:
//       en-US:            19092.123
//       fr-FR:            19092,123
//       ja-JP:            19092.123
//       ru-RU:            19092,123
//
//    1.173423191129E+16:
//       en-US:   1.173423191129E+16
//       fr-FR:   1,173423191129E+16
//       ja-JP:   1.173423191129E+16
//       ru-RU:   1,173423191129E+16
' Define an array of numbers to display.
Dim numbers() As Double = { -1.5345e16, -123.4321, 19092.123, _
                            1.1734231911290e16 }
' Define the culture names used to display them.
Dim cultureNames() As String = { "en-US", "fr-FR", "ja-JP", "ru-RU" }

For Each number As Double In numbers
   Console.WriteLine("{0}:", Convert.ToString(number, _
                             System.Globalization.CultureInfo.InvariantCulture))
   For Each cultureName As String In cultureNames
      Dim culture As New System.Globalization.CultureInfo(cultureName)
      Console.WriteLine("   {0}: {1,20}", _
                        culture.Name, Convert.ToString(number, culture))
   Next
   Console.WriteLine()
Next   
' The example displays the following output:
'    -1.5345E+16:
'       en-US:          -1.5345E+16
'       fr-FR:          -1,5345E+16
'       ja-JP:          -1.5345E+16
'       ru-RU:          -1,5345E+16
'    
'    -123.4321:
'       en-US:            -123.4321
'       fr-FR:            -123,4321
'       ja-JP:            -123.4321
'       ru-RU:            -123,4321
'    
'    19092.123:
'       en-US:            19092.123
'       fr-FR:            19092,123
'       ja-JP:            19092.123
'       ru-RU:            19092,123
'    
'    1.173423191129E+16:
'       en-US:   1.173423191129E+16
'       fr-FR:   1,173423191129E+16
'       ja-JP:   1.173423191129E+16
'       ru-RU:   1,173423191129E+16

Hinweise

Diese Implementierung ist identisch mit Double.ToString(IFormatProvider)

Gilt für

ToString(Int16, IFormatProvider)

Konvertiert den Wert der angegebenen 16-Bit-Ganzzahl mit Vorzeichen unter Verwendung der angegebenen kulturspezifischen Formatierungsinformationen in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(short value, IFormatProvider ^ provider);
public static string ToString (short value, IFormatProvider provider);
public static string ToString (short value, IFormatProvider? provider);
static member ToString : int16 * IFormatProvider -> string
Public Shared Function ToString (value As Short, provider As IFormatProvider) As String

Parameter

value
Int16

Die zu konvertierende 16-Bit-Ganzzahl mit Vorzeichen.

provider
IFormatProvider

Ein Objekt, das kulturspezifische Formatierungsinformationen bereitstellt.

Gibt zurück

String

Eine Zeichenfolgendarstellung von value.

Beispiele

Im folgenden Beispiel wird eine benutzerdefinierte NumberFormatInfo Klasse definiert, die das negative Zeichen als Zeichenfolge "~" und sein positives Zeichen als Zeichenfolge "!" definiert. Anschließend wird die ToString(Int16, IFormatProvider) Methode aufgerufen, um jedes Element in einem Array von 16-Bit-Ganzzahlen in die entsprechende Zeichenfolgendarstellung zu konvertieren. Die Konvertierung verwendet die invariante Kultur sowie das benutzerdefinierte NumberFormatInfo Objekt.

short[] numbers = { Int16.MinValue, Int16.MaxValue};
System.Globalization.NumberFormatInfo nfi = new System.Globalization.NumberFormatInfo();
nfi.NegativeSign = "~";
nfi.PositiveSign = "!";

foreach (short number in numbers)
   Console.WriteLine("{0,-8}  -->  {1,8}",
                     Convert.ToString(number, System.Globalization.CultureInfo.InvariantCulture),
                     Convert.ToString(number, nfi));
// The example displays the following output:
//       -32768    -->    ~32768
//       32767     -->     32767
let numbers = [| Int16.MinValue; Int16.MaxValue |]
let nfi = NumberFormatInfo()
nfi.NegativeSign <- "~"
nfi.PositiveSign <- "!"

for number in numbers do
    printfn $"{Convert.ToString(number, CultureInfo.InvariantCulture),-8}  -->  {Convert.ToString(number, nfi),8}"
// The example displays the following output:
//       -32768    -->    ~32768
//       32767     -->     32767
Dim numbers() As Short = { Int16.MinValue, Int16.MaxValue}
Dim nfi As New System.Globalization.NumberFormatInfo()
nfi.NegativeSign = "~"
nfi.PositiveSign = "!"

For Each number As Short In numbers
   Console.WriteLine("{0,-8}  -->  {1,8}", _
                     Convert.ToString(number, System.Globalization.CultureInfo.InvariantCulture), _
                     Convert.ToString(number, nfi))
Next
' The example displays the following output:
'       -32768    -->    ~32768
'       32767     -->     32767

Hinweise

Diese Implementierung ist identisch mit Int16.ToString(IFormatProvider).

Gilt für

ToString(Int16, Int32)

Konvertiert den Wert einer 16-Bit-Ganzzahl mit Vorzeichen in die entsprechende Zeichenfolgendarstellung in einer angegebenen Basis.

public:
 static System::String ^ ToString(short value, int toBase);
public static string ToString (short value, int toBase);
static member ToString : int16 * int -> string
Public Shared Function ToString (value As Short, toBase As Integer) As String

Parameter

value
Int16

Die zu konvertierende 16-Bit-Ganzzahl mit Vorzeichen.

toBase
Int32

Die Basis des Rückgabewerts, die 2, 8, 10 oder 16 sein muss.

Gibt zurück

String

Die Zeichenfolgendarstellung von value zur Basis toBase.

Ausnahmen

toBase ist nicht 2, 8, 10 oder 16.

Beispiele

Im folgenden Beispiel werden jedes Element in einem Array von 16-Bit-signierten Ganzzahlen in die entsprechenden binären, oktalen, dezimalen und hexadezimalen Zeichenfolgendarstellungen konvertiert.

int[] bases = { 2, 8, 10, 16};
short[] numbers = { Int16.MinValue, -13621, -18, 12, 19142, Int16.MaxValue };

foreach (int baseValue in bases)
{
   Console.WriteLine("Base {0} conversion:", baseValue);
   foreach (short number in numbers)
   {
      Console.WriteLine("   {0,-8}  -->  0x{1}",
                        number, Convert.ToString(number, baseValue));
   }
}
// The example displays the following output:
//       Base 2 conversion:
//          -32768    -->  0x1000000000000000
//          -13621    -->  0x1100101011001011
//          -18       -->  0x1111111111101110
//          12        -->  0x1100
//          19142     -->  0x100101011000110
//          32767     -->  0x111111111111111
//       Base 8 conversion:
//          -32768    -->  0x100000
//          -13621    -->  0x145313
//          -18       -->  0x177756
//          12        -->  0x14
//          19142     -->  0x45306
//          32767     -->  0x77777
//       Base 10 conversion:
//          -32768    -->  0x-32768
//          -13621    -->  0x-13621
//          -18       -->  0x-18
//          12        -->  0x12
//          19142     -->  0x19142
//          32767     -->  0x32767
//       Base 16 conversion:
//          -32768    -->  0x8000
//          -13621    -->  0xcacb
//          -18       -->  0xffee
//          12        -->  0xc
//          19142     -->  0x4ac6
//          32767     -->  0x7fff
let bases = [| 2; 8; 10; 16 |]
let numbers = [| Int16.MinValue; -13621s; -18s; 12s; 19142s; Int16.MaxValue |]

for baseValue in bases do
    printfn $"Base {baseValue} conversion:"
    for number in numbers do
        printfn $"   {number,-8}  -->  0x{Convert.ToString(number, baseValue)}"
// The example displays the following output:
//       Base 2 conversion:
//          -32768    -->  0x1000000000000000
//          -13621    -->  0x1100101011001011
//          -18       -->  0x1111111111101110
//          12        -->  0x1100
//          19142     -->  0x100101011000110
//          32767     -->  0x111111111111111
//       Base 8 conversion:
//          -32768    -->  0x100000
//          -13621    -->  0x145313
//          -18       -->  0x177756
//          12        -->  0x14
//          19142     -->  0x45306
//          32767     -->  0x77777
//       Base 10 conversion:
//          -32768    -->  0x-32768
//          -13621    -->  0x-13621
//          -18       -->  0x-18
//          12        -->  0x12
//          19142     -->  0x19142
//          32767     -->  0x32767
//       Base 16 conversion:
//          -32768    -->  0x8000
//          -13621    -->  0xcacb
//          -18       -->  0xffee
//          12        -->  0xc
//          19142     -->  0x4ac6
//          32767     -->  0x7fff
Dim bases() As Integer = { 2, 8, 10, 16}
Dim numbers() As Short = { Int16.MinValue, -13621, -18, 12, 19142, _
                           Int16.MaxValue }

For Each base As Integer In bases
   Console.WriteLine("Base {0} conversion:", base)
   For Each number As Short In numbers
      Console.WriteLine("   {0,-8}  -->  0x{1}", _
                        number, Convert.ToString(number, base))
   Next
Next
' The example displays the following output:
'       Base 2 conversion:
'          -32768    -->  0x1000000000000000
'          -13621    -->  0x1100101011001011
'          -18       -->  0x1111111111101110
'          12        -->  0x1100
'          19142     -->  0x100101011000110
'          32767     -->  0x111111111111111
'       Base 8 conversion:
'          -32768    -->  0x100000
'          -13621    -->  0x145313
'          -18       -->  0x177756
'          12        -->  0x14
'          19142     -->  0x45306
'          32767     -->  0x77777
'       Base 10 conversion:
'          -32768    -->  0x-32768
'          -13621    -->  0x-13621
'          -18       -->  0x-18
'          12        -->  0x12
'          19142     -->  0x19142
'          32767     -->  0x32767
'       Base 16 conversion:
'          -32768    -->  0x8000
'          -13621    -->  0xcacb
'          -18       -->  0xffee
'          12        -->  0xc
'          19142     -->  0x4ac6
'          32767     -->  0x7fff
let bases = [2; 8; 10; 16]
let numbers = [ Int16.MinValue; -13621s; -18s; 12s; 19142s; Int16.MaxValue ]

for baseValue in bases do
    printfn "Base %i conversion:" baseValue
    for number in numbers do
        printfn "   % -8i  -->  0x%s" number (Convert.ToString (number, baseValue))
// The example displays the following output:
//     Base 2 conversion:
//        -32768    -->  0x1000000000000000
//        -13621    -->  0x1100101011001011
//        -18       -->  0x1111111111101110
//         12       -->  0x1100
//         19142    -->  0x100101011000110
//         32767    -->  0x111111111111111
//     Base 8 conversion:
//        -32768    -->  0x100000
//        -13621    -->  0x145313
//        -18       -->  0x177756
//         12       -->  0x14
//         19142    -->  0x45306
//         32767    -->  0x77777
//     Base 10 conversion:
//        -32768    -->  0x-32768
//        -13621    -->  0x-13621
//        -18       -->  0x-18
//         12       -->  0x12
//         19142    -->  0x19142
//         32767    -->  0x32767
//     Base 16 conversion:
//        -32768    -->  0x8000
//        -13621    -->  0xcacb
//        -18       -->  0xffee
//         12       -->  0xc
//         19142    -->  0x4ac6
//         32767    -->  0x7fff

Hinweise

Wenn value die Zeichenfolge positiv ist und toBase 2, 8 oder 16 ist, verwendet die zurückgegebene Zeichenfolge die Zeichen- und Größendarstellung. Wenn value dies negativ ist und toBase 2, 8 oder 16 ist, verwendet die zurückgegebene Zeichenfolge zwei Ergänzungsdarstellungen. Dies bedeutet, dass das Hochreihenfolgen-Bit des Hochreihenfolgenbytes (Bit 15) als Zeichenbit interpretiert wird. Wenn die ToString(Int16, Int32) Methode aufgerufen wird, um eine Zeichenfolge zu erstellen, die später in eine Zahl konvertiert wird, sollte eine entsprechende Methode, die davon ausgeht, dass eine ähnliche numerische Darstellung aufgerufen werden soll, um die Konvertierung auszuführen. Solche Methoden umfassen Convert.ToInt16(String, Int32) und Int16.Parse(String, NumberStyles).

Gilt für

ToString(Int32, IFormatProvider)

Konvertiert den Wert der angegebenen 32-Bit-Ganzzahl mit Vorzeichen unter Verwendung der angegebenen kulturspezifischen Formatierungsinformationen in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(int value, IFormatProvider ^ provider);
public static string ToString (int value, IFormatProvider provider);
public static string ToString (int value, IFormatProvider? provider);
static member ToString : int * IFormatProvider -> string
Public Shared Function ToString (value As Integer, provider As IFormatProvider) As String

Parameter

value
Int32

Die zu konvertierende 32-Bit-Ganzzahl mit Vorzeichen.

provider
IFormatProvider

Ein Objekt, das kulturspezifische Formatierungsinformationen bereitstellt.

Gibt zurück

String

Eine Zeichenfolgendarstellung von value.

Beispiele

Im folgenden Beispiel wird eine benutzerdefinierte NumberFormatInfo Klasse definiert, die das negative Zeichen als Zeichenfolge "~" und sein positives Zeichen als Zeichenfolge "!" definiert. Anschließend wird die ToString(Int32, IFormatProvider) Methode aufgerufen, um jedes Element in einem Array von Ganzzahlen in die entsprechende Zeichenfolgendarstellung zu konvertieren. Die Konvertierung verwendet die invariante Kultur sowie das benutzerdefinierte NumberFormatInfo Objekt.

int[] numbers = { Int32.MinValue, Int32.MaxValue};
System.Globalization.NumberFormatInfo nfi = new System.Globalization.NumberFormatInfo();
nfi.NegativeSign = "~";
nfi.PositiveSign = "!";

foreach (int number in numbers)
   Console.WriteLine("{0,-12}  -->  {1,12}",
                     Convert.ToString(number, System.Globalization.CultureInfo.InvariantCulture),
                     Convert.ToString(number, nfi));
// The example displays the following output:
//       -2147483648  -->  ~2147483648
//       2147483647  -->  2147483647
let numbers = [| Int32.MinValue; Int32.MaxValue |]
let nfi = NumberFormatInfo()
nfi.NegativeSign <- "~"
nfi.PositiveSign <- "!"

for number in numbers do
    printfn $"{Convert.ToString(number, CultureInfo.InvariantCulture),-12}  -->  {Convert.ToString(number, nfi),12}"
// The example displays the following output:
//       -2147483648  -->  ~2147483648
//       2147483647  -->  2147483647
Dim numbers() As Integer = { Int32.MinValue, Int32.MaxValue}
Dim nfi As New System.Globalization.NumberFormatInfo()
nfi.NegativeSign = "~"
nfi.PositiveSign = "!"

For Each number As Integer In numbers
   Console.WriteLine("{0,-12}  -->  {1,12}", _
                     Convert.ToString(number, System.Globalization.CultureInfo.InvariantCulture), _
                     Convert.ToString(number, nfi))
Next
' The example displays the following output:
'       -2147483648  -->  ~2147483648
'       2147483647   -->  2147483647

Hinweise

Diese Implementierung ist identisch mit Int32.ToString(IFormatProvider).

Gilt für

ToString(Int64, IFormatProvider)

Konvertiert den Wert der angegebenen 64-Bit-Ganzzahl mit Vorzeichen unter Verwendung der angegebenen kulturspezifischen Formatierungsinformationen in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(long value, IFormatProvider ^ provider);
public static string ToString (long value, IFormatProvider provider);
public static string ToString (long value, IFormatProvider? provider);
static member ToString : int64 * IFormatProvider -> string
Public Shared Function ToString (value As Long, provider As IFormatProvider) As String

Parameter

value
Int64

Die zu konvertierende 64-Bit-Ganzzahl mit Vorzeichen.

provider
IFormatProvider

Ein Objekt, das kulturspezifische Formatierungsinformationen bereitstellt.

Gibt zurück

String

Eine Zeichenfolgendarstellung von value.

Beispiele

Im folgenden Beispiel wird eine benutzerdefinierte NumberFormatInfo Klasse definiert, die das negative Zeichen als Zeichenfolge "~" und sein positives Zeichen als Zeichenfolge "!" definiert. Anschließend wird die ToString(Int64, IFormatProvider) Methode aufgerufen, um jedes Element in einem langen ganzzahligen Array in seine entsprechende Zeichenfolgendarstellung zu konvertieren. Die Konvertierung verwendet die invariante Kultur sowie das benutzerdefinierte NumberFormatInfo Objekt.

long[] numbers = { ((long) Int32.MinValue) * 2, ((long) Int32.MaxValue) * 2};
System.Globalization.NumberFormatInfo nfi = new System.Globalization.NumberFormatInfo();
nfi.NegativeSign = "~";
nfi.PositiveSign = "!";

foreach (long number in numbers)
   Console.WriteLine("{0,-12}  -->  {1,12}",
                     Convert.ToString(number, System.Globalization.CultureInfo.InvariantCulture),
                     Convert.ToString(number, nfi));
// The example displays the following output:
//       -4294967296  -->  ~4294967296
//       4294967294  -->  4294967294
let numbers = [| (int64 Int32.MinValue) * 2L; (int64 Int32.MaxValue) * 2L |]
let nfi = NumberFormatInfo()
nfi.NegativeSign <- "~"
nfi.PositiveSign <- "!"

for number in numbers do
    printfn $"{Convert.ToString(number, CultureInfo.InvariantCulture),-12}  -->  {Convert.ToString(number, nfi),12}"
// The example displays the following output:
//       -4294967296  -->  ~4294967296
//       4294967294  -->  4294967294
Dim numbers() As Long = { CLng(Int32.MinValue) * 2, CLng(Int32.MaxValue) * 2 }
Dim nfi As New System.Globalization.NumberFormatInfo()
nfi.NegativeSign = "~"
nfi.PositiveSign = "!"

For Each number As Long In numbers
   Console.WriteLine("{0,-12}  -->  {1,12}", _
                     Convert.ToString(number, System.Globalization.CultureInfo.InvariantCulture), _
                     Convert.ToString(number, nfi))
Next
' The example displays the following output:
'       -4294967296  -->  ~4294967296
'       4294967294   -->  4294967294

Hinweise

Diese Implementierung ist identisch mit Int64.ToString(IFormatProvider).

Gilt für

ToString(UInt64)

Wichtig

Diese API ist nicht CLS-kompatibel.

Konvertiert den Wert der angegebenen 64-Bit-Ganzzahl ohne Vorzeichen in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(System::UInt64 value);
[System.CLSCompliant(false)]
public static string ToString (ulong value);
[<System.CLSCompliant(false)>]
static member ToString : uint64 -> string
Public Shared Function ToString (value As ULong) As String

Parameter

value
UInt64

Die zu konvertierende 64-Bit-Ganzzahl ohne Vorzeichen.

Gibt zurück

String

Eine Zeichenfolgendarstellung von value.

Attribute

Beispiele

Im folgenden Beispiel wird jedes Element in einem nicht signierten langen ganzzahligen Array in die entsprechende Zeichenfolgendarstellung konvertiert.

ulong[] numbers = { UInt64.MinValue, 1031, 189045, UInt64.MaxValue };
string result;

foreach (ulong number in numbers)
{
   result = Convert.ToString(number);
   Console.WriteLine("Converted the {0} value {1} to the {2} value {3}.",
                        number.GetType().Name, number,
                        result.GetType().Name, result);
}
// The example displays the following output:
//    Converted the UInt64 value 0 to the String value 0.
//    Converted the UInt64 value 1031 to the String value 1031.
//    Converted the UInt64 value 189045 to the String value 189045.
//    Converted the UInt64 value 18446744073709551615 to the String value 18446744073709551615.
let numbers = [| UInt64.MinValue; 1031uL; 189045uL; UInt64.MaxValue |]

for number in numbers do
    let result = Convert.ToString number
    printfn $"Converted the {number.GetType().Name} value {number} to the {result.GetType().Name} value {result}."
// The example displays the following output:
//    Converted the UInt64 value 0 to the String value 0.
//    Converted the UInt64 value 1031 to the String value 1031.
//    Converted the UInt64 value 189045 to the String value 189045.
//    Converted the UInt64 value 18446744073709551615 to the String value 18446744073709551615.
Dim numbers() As ULong = { UInt64.MinValue, 1031, 189045, UInt64.MaxValue }
Dim result As String

For Each number As ULong In numbers
   result = Convert.ToString(number)
   Console.WriteLine("Converted the {0} value {1} to the {2} value {3}.", _
                        number.GetType().Name, number, _
                        result.GetType().Name, result)
Next
' The example displays the following output:
'    Converted the UInt64 value 0 to the String value 0.
'    Converted the UInt64 value 1031 to the String value 1031.
'    Converted the UInt64 value 189045 to the String value 189045.
'    Converted the UInt64 value 18446744073709551615 to the String value 18446744073709551615.

Hinweise

Diese Implementierung ist identisch mit UInt64.ToString().

Gilt für

ToString(Object, IFormatProvider)

Konvertiert den Wert des angegebenen Objekts unter Verwendung der angegebenen kulturspezifischen Formatierungsinformationen in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(System::Object ^ value, IFormatProvider ^ provider);
public static string ToString (object value, IFormatProvider provider);
public static string? ToString (object? value, IFormatProvider? provider);
static member ToString : obj * IFormatProvider -> string
Public Shared Function ToString (value As Object, provider As IFormatProvider) As String

Parameter

value
Object

Ein Objekt, das den zu konvertierenden Wert angibt, oder null.

provider
IFormatProvider

Ein Objekt, das kulturspezifische Formatierungsinformationen bereitstellt.

Gibt zurück

String

Die Zeichenfolgendarstellung von value oder Empty, wenn value ein Objekt ist, dessen Wert null beträgt. Wenn value gleich null ist, gibt die Methode null zurück.

Beispiele

Im folgenden Beispiel wird eine Temperature Klasse definiert, die die Object.ToString Methode außer Kraft setzt, aber die IConvertible Schnittstelle nicht implementiert. Das Beispiel veranschaulicht, wie Aufrufe der Convert.ToString(Object, IFormatProvider) Methode wiederum die Temperature.ToString Methode aufrufen.

using System;

public class Temperature
{
   private decimal m_Temp;

   public Temperature(decimal temperature)
   {
      this.m_Temp = temperature;
   }

   public decimal Celsius
   {
      get { return this.m_Temp; }
   }

   public decimal Kelvin
   {
      get { return this.m_Temp + 273.15m; }
   }

   public decimal Fahrenheit
   {
      get { return Math.Round((decimal) (this.m_Temp * 9 / 5 + 32), 2); }
   }

   public override string ToString()
   {
      return m_Temp.ToString("N2") + " °C";
   }
}

public class Example
{
   public static void Main()
   {
      Temperature cold = new Temperature(-40);
      Temperature freezing = new Temperature(0);
      Temperature boiling = new Temperature(100);

      Console.WriteLine(Convert.ToString(cold, null));
      Console.WriteLine(Convert.ToString(freezing, null));
      Console.WriteLine(Convert.ToString(boiling, null));
   }
}
// The example dosplays the following output:
//       -40.00 °C
//       0.00 °C
//       100.00 °C
open System

type Temperature(temperature: decimal) =
    member _.Celsius =
        temperature

    member _.Kelvin =
        temperature + 273.15m

    member _.Fahrenheit =
        Math.Round(temperature * 9m / 5m + 32m |> decimal, 2)

    override _.ToString() =
        temperature.ToString("N2") + " °C"

let cold = Temperature -40
let freezing = Temperature 0
let boiling = Temperature 100

printfn $"{Convert.ToString(cold, null)}"
printfn $"{Convert.ToString(freezing, null)}"
printfn $"{Convert.ToString(boiling, null)}"
// The example dosplays the following output:
//       -40.00 °C
//       0.00 °C
//       100.00 °C
Public Class Temperature 
   Private m_Temp As Decimal

   Public Sub New(temperature As Decimal)
      Me.m_Temp = temperature
   End Sub
   
   Public ReadOnly Property Celsius() As Decimal
      Get
         Return Me.m_Temp
      End Get   
   End Property
   
   Public ReadOnly Property Kelvin() As Decimal
      Get
         Return Me.m_Temp + 273.15d   
      End Get
   End Property
   
   Public ReadOnly Property Fahrenheit() As Decimal
      Get
         Return Math.Round(CDec(Me.m_Temp * 9 / 5 + 32), 2)
      End Get      
   End Property
   
   Public Overrides Function ToString() As String
      Return m_Temp.ToString("N2") & " °C"
   End Function
End Class

Module Example
   Public Sub Main()
      Dim cold As New Temperature(-40)
      Dim freezing As New Temperature(0)
      Dim boiling As New Temperature(100)
      
      Console.WriteLine(Convert.ToString(cold, Nothing))
      Console.WriteLine(Convert.ToString(freezing, Nothing))
      Console.WriteLine(Convert.ToString(boiling, Nothing))
   End Sub
End Module
' The example displays the following output:
'       -40.00 °C
'       0.00 °C
'       100.00 °C

Im folgenden Beispiel wird eine Temperature Klasse definiert, die die IFormattable Schnittstelle implementiert, aber nicht die IConvertible Schnittstelle implementiert. Seine IFormattable.ToString Implementierung stellt je nach Formatzeichenfolge den Temperature Wert in Celsius, Fahrenheit oder Kelvin dar. Im Beispiel wird auch eine Klasse definiert, die eine TemperatureProvider zufällig generierte Formatzeichenfolge implementiert IFormatProvider und bereitstellt, die von der IFormattable Implementierung der Temperature Klasse verwendet wird.

using System;

public class Temperature : IFormattable
{
   private decimal m_Temp;

   public Temperature(decimal temperature)
   {
      this.m_Temp = temperature;
   }

   public decimal Celsius
   { get { return this.m_Temp; } }

   public decimal Kelvin
   { get { return this.m_Temp + 273.15m; } }

   public decimal Fahrenheit
   {  get { return Math.Round(this.m_Temp * 9m / 5m + 32m, 2); } }

   public override String ToString()
   {
      return ToString("G", null);
   }

   public String ToString(String fmt, IFormatProvider provider)
   {
      TemperatureProvider formatter = null;
      if (provider != null)
         formatter = provider.GetFormat(typeof(TemperatureProvider))
                                       as TemperatureProvider;

      if (String.IsNullOrWhiteSpace(fmt)) {
         if (formatter != null)
            fmt = formatter.Format;
         else
            fmt = "G";
      }

      switch (fmt.ToUpper()) {
         case "G":
         case "C":
            return m_Temp.ToString("N2") + " °C";
         case "F":
            return Fahrenheit.ToString("N2") + " °F";
         case "K":
            return Kelvin.ToString("N2") + " K";
         default:
            throw new FormatException(String.Format("'{0}' is not a valid format specifier.", fmt));
      }
   }
}

public class TemperatureProvider : IFormatProvider
{
   private String[] fmtStrings = { "C", "G", "F", "K" };
   private Random rnd = new Random();

   public Object GetFormat(Type formatType)
   {
      return this;
   }

   public String Format
   { get { return fmtStrings[rnd.Next(0, fmtStrings.Length)]; } }
}

public class Example
{
   public static void Main()
   {
      Temperature cold = new Temperature (-40);
      Temperature freezing = new Temperature (0);
      Temperature boiling = new Temperature (100);

      TemperatureProvider tp = new TemperatureProvider();

      Console.WriteLine(Convert.ToString(cold, tp));
      Console.WriteLine(Convert.ToString(freezing, tp));
      Console.WriteLine(Convert.ToString(boiling, tp));
   }
}
// The example displays output like the following:
//       -40.00 °C
//       273.15 K
//       100.00 °C
open System

[<AllowNullLiteral>]
type TemperatureProvider() =
    let fmtStrings = [| "C"; "G"; "F"; "K" |]
    let rnd = Random()

    member _.Format =
        fmtStrings[rnd.Next(0, fmtStrings.Length)]

    interface IFormatProvider with
        member this.GetFormat(formatType: Type) =
            this

type Temperature(temperature: decimal) =
    member _.Celsius =
        temperature
    member _.Kelvin =
        temperature + 273.15m

    member _.Fahrenheit =
        Math.Round(temperature * 9m / 5m + 32m, 2)

    override this.ToString() =
        this.ToString("G", null)

    member this.ToString(fmt: string, provider: IFormatProvider) =
        let formatter =
            match provider with
            | null -> null
            | _ ->
                match provider.GetFormat typeof<TemperatureProvider> with
                | :? TemperatureProvider as x -> x
                | _ -> null 

        let fmt = 
            if String.IsNullOrWhiteSpace fmt then
                if formatter <> null then
                    formatter.Format
                else
                    "G"
            else fmt

        match fmt.ToUpper() with
        | "G"
        | "C" ->
            $"{temperature:N2} °C"
        | "F" ->
            $"{this.Fahrenheit:N2}  °F"
        | "K" ->
            $"{this.Kelvin:N2} K"
        | _ ->
            raise (FormatException $"'{fmt}' is not a valid format specifier.")

let cold = Temperature -40
let freezing = Temperature 0
let boiling = Temperature 100

let tp = TemperatureProvider()

printfn $"{Convert.ToString(cold, tp)}"
printfn $"{Convert.ToString(freezing, tp)}"
printfn $"{Convert.ToString(boiling, tp)}"
// The example displays output like the following:
//       -40.00 °C
//       273.15 K
//       100.00 °C
Public Class Temperature : Implements IFormattable 
   Private m_Temp As Decimal 

   Public Sub New(temperature As Decimal)
      Me.m_Temp = temperature
   End Sub 

   Public ReadOnly Property Celsius As Decimal 
      Get 
         Return Me.m_Temp
      End Get    
   End Property 

   Public ReadOnly Property Kelvin As Decimal 
      Get 
         Return Me.m_Temp + 273.15d   
      End Get 
   End Property 

   Public ReadOnly Property Fahrenheit As Decimal 
      Get 
         Return Math.Round(CDec(Me.m_Temp * 9 / 5 + 32), 2)
      End Get       
   End Property 

   Public Overrides Function ToString() As String 
      Return ToString("G", Nothing) 
   End Function 
   
   Public Overloads Function ToString(fmt As String, 
                                      provider As IFormatProvider) As String _
                             Implements IFormattable.ToString
      Dim formatter As TemperatureProvider = Nothing
      If provider IsNot Nothing Then formatter = TryCast(provider.GetFormat(GetType(TemperatureProvider)),
                                                         TemperatureProvider)

      If String.IsNullOrWhiteSpace(fmt) Then
         If formatter IsNot Nothing Then
            fmt = formatter.Format
         Else
            fmt = "G"
         End If
      End If

      Select Case fmt.ToUpper()
         Case "G", "C"
            Return m_Temp.ToString("N2") & " °C" 
         Case "F"
            Return Fahrenheit.ToString("N2") + " °F"
         Case "K"
            Return Kelvin.ToString("N2") + " K"
         Case Else
            Throw New FormatException(String.Format("'{0}' is not a valid format specifier.", fmt))
      End Select
   End Function                             
End Class 

Public Class TemperatureProvider : Implements IFormatProvider
   Private fmtStrings() As String = { "C", "G", "F", "K" }
   Private rnd As New Random()
   
   Public Function GetFormat(formatType As Type) As Object _
                   Implements IFormatProvider.GetFormat 
      Return Me 
   End Function
   
   Public ReadOnly Property Format As String
      Get
         Return fmtStrings(rnd.Next(0, fmtStrings.Length))
      End Get
   End Property
End Class

Module Example
   Public Sub Main()
      Dim cold As New Temperature(-40)
      Dim freezing As New Temperature(0)
      Dim boiling As New Temperature(100)

      Dim tp As New TemperatureProvider()
      
      Console.WriteLine(Convert.ToString(cold, tp))
      Console.WriteLine(Convert.ToString(freezing, tp))
      Console.WriteLine(Convert.ToString(boiling, tp))
   End Sub 
End Module 
' The example displays output like the following:
'       -40.00 °C
'       273.15 K
'       100.00 °C

Hinweise

Wenn der value Parameter die IConvertible Schnittstelle implementiert, ruft die Methode die IConvertible.ToString(IFormatProvider) Implementierung von value. Andernfalls ruft die Methode die Implementierung aufIFormattable.ToString(String, IFormatProvider), wenn der value Parameter die IFormattable Schnittstelle implementiert. Wenn value keine Schnittstelle implementiert wird, ruft die Methode die Methode des value ToString() Parameters auf, und der provider Parameter wird ignoriert.

Der provider Parameter wird verwendet, wenn der value Parameter die IConvertible Schnittstelle IFormattable implementiert. Die häufigste Verwendung des provider Parameters besteht darin, kulturspezifische Informationen anzugeben, die in der Konvertierung von value. Wenn der Parameter beispielsweise eine negative Dezimalzahl ist, kann der value provider Parameter kulturspezifische Informationen zur Notation angeben, die für das negative Zeichen und Dezimaltrennzeichen verwendet wird. Im zweiten Beispiel im nächsten Abschnitt wird ein Formatanbieter veranschaulicht, der keine Informationen zur kulturrelevanten Formatierung liefert.

Gilt für

ToString(SByte, IFormatProvider)

Wichtig

Diese API ist nicht CLS-kompatibel.

Konvertiert den Wert der angegebenen 8-Bit-Ganzzahl mit Vorzeichen unter Verwendung der angegebenen kulturspezifischen Formatierungsinformationen in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(System::SByte value, IFormatProvider ^ provider);
[System.CLSCompliant(false)]
public static string ToString (sbyte value, IFormatProvider provider);
[System.CLSCompliant(false)]
public static string ToString (sbyte value, IFormatProvider? provider);
[<System.CLSCompliant(false)>]
static member ToString : sbyte * IFormatProvider -> string
Public Shared Function ToString (value As SByte, provider As IFormatProvider) As String

Parameter

value
SByte

Die zu konvertierende 8-Bit-Ganzzahl mit Vorzeichen.

provider
IFormatProvider

Ein Objekt, das kulturspezifische Formatierungsinformationen bereitstellt.

Gibt zurück

String

Eine Zeichenfolgendarstellung von value.

Attribute

Beispiele

Im folgenden Beispiel wird eine benutzerdefinierte NumberFormatInfo Klasse definiert, die das negative Zeichen als Zeichenfolge "~" und sein positives Zeichen als Zeichenfolge "!" definiert. Anschließend wird die Convert.ToString(SByte, IFormatProvider) Methode aufgerufen, um jedes Element im signierten Bytearray in seine entsprechende Zeichenfolgendarstellung zu konvertieren. Die Konvertierung verwendet die invariante Kultur sowie das benutzerdefinierte NumberFormatInfo Objekt.

sbyte[] numbers = { SByte.MinValue, -12, 17, SByte.MaxValue};
System.Globalization.NumberFormatInfo nfi = new System.Globalization.NumberFormatInfo();
nfi.NegativeSign = "~";
nfi.PositiveSign = "!";
foreach (sbyte number in numbers)
   Console.WriteLine(Convert.ToString(number, nfi));
// The example displays the following output:
//       ~128
//       ~12
//       17
//       127
let numbers = [| SByte.MinValue; -12y; 17y; SByte.MaxValue |]
let nfi = NumberFormatInfo()
nfi.NegativeSign <- "~"
nfi.PositiveSign <- "!"
for number in numbers do
    printfn $"{Convert.ToString(number, nfi)}"
// The example displays the following output:
//       ~128
//       ~12
//       17
//       127
Dim numbers() As SByte = { SByte.MinValue, -12, 17, SByte.MaxValue}
Dim nfi As New System.Globalization.NumberFormatInfo()
nfi.NegativeSign = "~"
nfi.PositiveSign = "!"
For Each number As SByte In numbers
   Console.WriteLine(Convert.ToString(number, nfi))
Next
' The example displays the following output:
'       ~128
'       ~12
'       17
'       127

Hinweise

Diese Implementierung ist identisch mit SByte.ToString(IFormatProvider).

Gilt für

ToString(Single, IFormatProvider)

Konvertiert den Wert der angegebenen Gleitkommazahl mit einfacher Genauigkeit unter Verwendung der angegebenen kulturspezifischen Formatierungsinformationen in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(float value, IFormatProvider ^ provider);
public static string ToString (float value, IFormatProvider provider);
public static string ToString (float value, IFormatProvider? provider);
static member ToString : single * IFormatProvider -> string
Public Shared Function ToString (value As Single, provider As IFormatProvider) As String

Parameter

value
Single

Die zu konvertierende Gleitkommazahl mit einfacher Genauigkeit.

provider
IFormatProvider

Ein Objekt, das kulturspezifische Formatierungsinformationen bereitstellt.

Gibt zurück

String

Eine Zeichenfolgendarstellung von value.

Beispiele

Im folgenden Beispiel werden jedes Element in einem Array von Single Werten in die entsprechende Zeichenfolgendarstellung in vier verschiedenen Kulturen konvertiert.

// Define an array of numbers to display.
float[] numbers = { -1.5345e16f, -123.4321f, 19092.123f, 1.1734231911290e16f };
// Define the culture names used to display them.
string[] cultureNames = { "en-US", "fr-FR", "ja-JP", "ru-RU" };

foreach (float number in numbers)
{
   Console.WriteLine("{0}:", Convert.ToString(number,
                             System.Globalization.CultureInfo.InvariantCulture));
   foreach (string cultureName in cultureNames)
   {
      System.Globalization.CultureInfo culture = new System.Globalization.CultureInfo(cultureName);
      Console.WriteLine("   {0}: {1,20}",
                        culture.Name, Convert.ToString(number, culture));
   }
   Console.WriteLine();
}
// The example displays the following output:
//    -1.5345E+16:
//       en-US:          -1.5345E+16
//       fr-FR:          -1,5345E+16
//       ja-JP:          -1.5345E+16
//       ru-RU:          -1,5345E+16
//
//    -123.4321:
//       en-US:            -123.4321
//       fr-FR:            -123,4321
//       ja-JP:            -123.4321
//       ru-RU:            -123,4321
//
//    19092.123:
//       en-US:            19092.123
//       fr-FR:            19092,123
//       ja-JP:            19092.123
//       ru-RU:            19092,123
//
//    1.173423191129E+16:
//       en-US:   1.173423191129E+16
//       fr-FR:   1,173423191129E+16
//       ja-JP:   1.173423191129E+16
//       ru-RU:   1,173423191129E+16
// Define an array of numbers to display.
let numbers = [| -1.5345e16f; -123.4321f; 19092.123f; 1.1734231911290e16f |]
// Define the culture names used to display them.
let cultureNames = [| "en-US"; "fr-FR"; "ja-JP"; "ru-RU" |]

for number in numbers do
    printfn $"{Convert.ToString(number, CultureInfo.InvariantCulture)}:"
    for cultureName in cultureNames do
        let culture = CultureInfo cultureName
        printfn $"   {culture.Name}: {Convert.ToString(number, culture),20}"
    printfn ""
// The example displays the following output:
//    -1.5345E+16:
//       en-US:          -1.5345E+16
//       fr-FR:          -1,5345E+16
//       ja-JP:          -1.5345E+16
//       ru-RU:          -1,5345E+16
//
//    -123.4321:
//       en-US:            -123.4321
//       fr-FR:            -123,4321
//       ja-JP:            -123.4321
//       ru-RU:            -123,4321
//
//    19092.123:
//       en-US:            19092.123
//       fr-FR:            19092,123
//       ja-JP:            19092.123
//       ru-RU:            19092,123
//
//    1.173423191129E+16:
//       en-US:   1.173423191129E+16
//       fr-FR:   1,173423191129E+16
//       ja-JP:   1.173423191129E+16
//       ru-RU:   1,173423191129E+16
' Define an array of numbers to display.
Dim numbers() As Single = { -1.5345e16, -123.4321, 19092.123, _
                            1.1734231911290e16 }
' Define the culture names used to display them.
Dim cultureNames() As String = { "en-US", "fr-FR", "ja-JP", "ru-RU" }

For Each number As Single In numbers
   Console.WriteLine("{0}:", Convert.ToString(number, _
                             System.Globalization.CultureInfo.InvariantCulture))
   For Each cultureName As String In cultureNames
      Dim culture As New System.Globalization.CultureInfo(cultureName)
      Console.WriteLine("   {0}: {1,20}", _
                        culture.Name, Convert.ToString(number, culture))
   Next
   Console.WriteLine()
Next   
' The example displays the following output:
'    -1.5345E+16:
'       en-US:          -1.5345E+16
'       fr-FR:          -1,5345E+16
'       ja-JP:          -1.5345E+16
'       ru-RU:          -1,5345E+16
'    
'    -123.4321:
'       en-US:            -123.4321
'       fr-FR:            -123,4321
'       ja-JP:            -123.4321
'       ru-RU:            -123,4321
'    
'    19092.123:
'       en-US:            19092.123
'       fr-FR:            19092,123
'       ja-JP:            19092.123
'       ru-RU:            19092,123
'    
'    1.173423191129E+16:
'       en-US:   1.173423191129E+16
'       fr-FR:   1,173423191129E+16
'       ja-JP:   1.173423191129E+16
'       ru-RU:   1,173423191129E+16

Hinweise

Diese Implementierung ist identisch mit Single.ToString(IFormatProvider).

Gilt für

ToString(String, IFormatProvider)

Gibt die angegebene Zeichenfolgeninstanz zurück. Es wird keine wirkliche Konvertierung durchgeführt.

public:
 static System::String ^ ToString(System::String ^ value, IFormatProvider ^ provider);
public static string? ToString (string? value, IFormatProvider? provider);
public static string ToString (string value, IFormatProvider provider);
static member ToString : string * IFormatProvider -> string
Public Shared Function ToString (value As String, provider As IFormatProvider) As String

Parameter

value
String

Die zurückzugebende Zeichenfolge.

provider
IFormatProvider

Ein Objekt, das kulturspezifische Formatierungsinformationen bereitstellt. Konvertiert die Zeichenfolgendarstellung einer Zahl in einem angegebenen Stil und einem kulturspezifischen Format in die entsprechende 32-Bit-Ganzzahl mit Vorzeichen.

Gibt zurück

String

value wird unverändert zurückgegeben.

Beispiele

Im folgenden Beispiel wird die ToString Methode mit einem String Parameter aufgerufen. Die Methode gibt die nicht geänderte String Methode zurück, ohne auf das IFormatProvider Objekt zu verweisen.

// Example of Convert::ToString( non-numeric types, IFormatProvider ).
using namespace System;
using namespace System::Globalization;

#define null (Object^)0

// An instance of this class can be passed to methods that require 
// an IFormatProvider.
ref class DummyProvider: public IFormatProvider
{
public:

   // Normally, GetFormat returns an object of the requested type
   // (usually itself) if it is able; otherwise, it returns Nothing. 
   virtual Object^ GetFormat( Type^ argType )
   {
      // Here, the type of argType is displayed, and GetFormat
      // always returns Nothing.
      Console::Write( "{0,-40}", argType->ToString() );
      return null;
   }
};

int main()
{
   // Create an instance of the IFormatProvider.
   DummyProvider^ provider = gcnew DummyProvider;
   String^ converted;

   // Convert these values using DummyProvider.
   int Int32A = -252645135;
   double DoubleA = 61680.3855;
   Object^ ObjDouble =  -98765.4321;
   DateTime DayTimeA = DateTime(2001,9,11,13,45,0);
   bool BoolA = true;
   String^ StringA = "Qwerty";
   Char CharA = '$';
   TimeSpan TSpanA = TimeSpan(0,18,0);
   Object^ ObjOther = static_cast<Object^>(provider);
   Console::WriteLine( "This example of "
   "Convert::ToString( non-numeric, IFormatProvider* ) \n"
   "generates the following output. The provider type, "
   "argument type, \nand argument value are displayed." );
   Console::WriteLine( "\nNote: The IFormatProvider object is "
   "not called for Boolean, String, \nChar, TimeSpan, "
   "and non-numeric Object." );

   // The format provider is called for these conversions.
   Console::WriteLine();
   converted = Convert::ToString( Int32A, provider );
   Console::WriteLine( "int      {0}", converted );
   converted = Convert::ToString( DoubleA, provider );
   Console::WriteLine( "double   {0}", converted );
   converted = Convert::ToString( ObjDouble, provider );
   Console::WriteLine( "Object   {0}", converted );
   converted = Convert::ToString( DayTimeA, provider );
   Console::WriteLine( "DateTime {0}", converted );

   // The format provider is not called for these conversions.
   Console::WriteLine();
   converted = Convert::ToString( BoolA, provider );
   Console::WriteLine( "bool     {0}", converted );
   converted = Convert::ToString( StringA, provider );
   Console::WriteLine( "String   {0}", converted );
   converted = Convert::ToString( CharA, provider );
   Console::WriteLine( "Char     {0}", converted );
   converted = Convert::ToString( TSpanA, provider );
   Console::WriteLine( "TimeSpan {0}", converted );
   converted = Convert::ToString( ObjOther, provider );
   Console::WriteLine( "Object   {0}", converted );
}

/*
This example of Convert::ToString( non-numeric, IFormatProvider* )
generates the following output. The provider type, argument type,
and argument value are displayed.

Note: The IFormatProvider object is not called for Boolean, String,
Char, TimeSpan, and non-numeric Object.

System.Globalization.NumberFormatInfo   int      -252645135
System.Globalization.NumberFormatInfo   double   61680.3855
System.Globalization.NumberFormatInfo   Object   -98765.4321
System.Globalization.DateTimeFormatInfo DateTime 9/11/2001 1:45:00 PM

bool     True
String   Qwerty
Char     $
TimeSpan 00:18:00
Object   DummyProvider
*/
// Example of Convert.ToString( non-numeric types, IFormatProvider ).
using System;
using System.Globalization;

// An instance of this class can be passed to methods that require
// an IFormatProvider.
public class DummyProvider : IFormatProvider
{
    // Normally, GetFormat returns an object of the requested type
    // (usually itself) if it is able; otherwise, it returns Nothing.
    public object GetFormat( Type argType )
    {
        // Here, the type of argType is displayed, and GetFormat
        // always returns Nothing.
        Console.Write( "{0,-40}", argType.ToString( ) );
        return null;
    }
}

class ConvertNonNumericProviderDemo
{
    static void Main( )
    {
        // Create an instance of the IFormatProvider.
        DummyProvider provider = new DummyProvider( );
        string converted;

        // Convert these values using DummyProvider.
        int      Int32A     = -252645135;
        double   DoubleA    = 61680.3855;
        object   ObjDouble  = (object)( -98765.4321 );
        DateTime DayTimeA   = new DateTime( 2001, 9, 11, 13, 45, 0 );

        bool     BoolA      = true;
        string   StringA    = "Qwerty";
        char     CharA      = '$';
        TimeSpan TSpanA     = new TimeSpan( 0, 18, 0 );
        object   ObjOther   = (object)provider;

        Console.WriteLine( "This example of " +
            "Convert.ToString( non-numeric, IFormatProvider ) \n" +
            "generates the following output. The provider type, " +
            "argument type, \nand argument value are displayed." );
        Console.WriteLine( "\nNote: The IFormatProvider object is " +
            "not called for Boolean, String, \nChar, TimeSpan, " +
            "and non-numeric Object." );

        // The format provider is called for these conversions.
        Console.WriteLine( );
        converted = Convert.ToString( Int32A, provider );
        Console.WriteLine( "int      {0}", converted );
        converted = Convert.ToString( DoubleA, provider );
        Console.WriteLine( "double   {0}", converted );
        converted = Convert.ToString( ObjDouble, provider );
        Console.WriteLine( "object   {0}", converted );
        converted = Convert.ToString( DayTimeA, provider );
        Console.WriteLine( "DateTime {0}", converted );

        // The format provider is not called for these conversions.
        Console.WriteLine( );
        converted = Convert.ToString( BoolA, provider );
        Console.WriteLine( "bool     {0}", converted );
        converted = Convert.ToString( StringA, provider );
        Console.WriteLine( "string   {0}", converted );
        converted = Convert.ToString( CharA, provider );
        Console.WriteLine( "char     {0}", converted );
        converted = Convert.ToString( TSpanA, provider );
        Console.WriteLine( "TimeSpan {0}", converted );
        converted = Convert.ToString( ObjOther, provider );
        Console.WriteLine( "object   {0}", converted );
    }
}

/*
This example of Convert.ToString( non-numeric, IFormatProvider )
generates the following output. The provider type, argument type,
and argument value are displayed.

Note: The IFormatProvider object is not called for Boolean, String,
Char, TimeSpan, and non-numeric Object.

System.Globalization.NumberFormatInfo   int      -252645135
System.Globalization.NumberFormatInfo   double   61680.3855
System.Globalization.NumberFormatInfo   object   -98765.4321
System.Globalization.DateTimeFormatInfo DateTime 9/11/2001 1:45:00 PM

bool     True
string   Qwerty
char     $
TimeSpan 00:18:00
object   DummyProvider

*/
// Example of Convert.ToString(non-numeric types, IFormatProvider).
open System
open System.Globalization

// Create an instance of the IFormatProvider with an object expression.
let provider =
    { new IFormatProvider with
        // Normally, GetFormat returns an object of the requested type
        // (usually itself) if it is able; otherwise, it returns Nothing.
        member _.GetFormat(argType: Type) =
            // Here, the type of argType is displayed, and GetFormat
            // always returns Nothing.
            printf $"{argType,-40}"
            null 
    }

// Convert these values using DummyProvider.
let Int32A     = -252645135
let DoubleA    = 61680.3855
let ObjDouble  = -98765.4321 :> obj
let DayTimeA   = DateTime(2001, 9, 11, 13, 45, 0)

let BoolA      = true
let StringA    = "Qwerty"
let CharA      = '$'
let TSpanA     = TimeSpan(0, 18, 0)
let ObjOther   = provider :> obj

[<EntryPoint>]
let main _ =
    printfn
        """This example of Convert.ToString(non-numeric, IFormatProvider) 
generates the following output. The provider type, argument type, 
and argument value are displayed.

Note: The IFormatProvider object is not called for Boolean, String, 
Char, TimeSpan, and non-numeric Object."""

    // The format provider is called for these conversions.
    printfn ""
    let converted = Convert.ToString(Int32A, provider)
    printfn $"int      {converted}"
    let converted = Convert.ToString(DoubleA, provider)
    printfn $"double   {converted}"
    let converted = Convert.ToString(ObjDouble, provider)
    printfn $"object   {converted}"
    let converted = Convert.ToString(DayTimeA, provider)
    printfn $"DateTime {converted}"

    // The format provider is not called for these conversions.
    printfn ""
    let converted = Convert.ToString(BoolA, provider)
    printfn $"bool     {converted}"
    let converted = Convert.ToString(StringA, provider)
    printfn $"string   {converted}"
    let converted = Convert.ToString(CharA, provider)
    printfn $"char     {converted}"
    let converted = Convert.ToString(TSpanA, provider)
    printfn $"TimeSpan {converted}"
    let converted = Convert.ToString(ObjOther, provider)
    printfn $"object   {converted}"

    0

// This example of Convert.ToString(non-numeric, IFormatProvider)
// generates the following output. The provider type, argument type,
// and argument value are displayed.
//
// Note: The IFormatProvider object is not called for Boolean, String,
// Char, TimeSpan, and non-numeric Object.
//
// System.Globalization.NumberFormatInfo   int      -252645135
// System.Globalization.NumberFormatInfo   double   61680.3855
// System.Globalization.NumberFormatInfo   object   -98765.4321
// System.Globalization.DateTimeFormatInfo DateTime 9/11/2001 1:45:00 PM
//
// bool     True
// string   Qwerty
// char     $
// TimeSpan 00:18:00
// object   DummyProvider
' Example of Convert.ToString( non-numeric types, IFormatProvider ).
Imports System.Globalization

' An instance of this class can be passed to methods that require 
' an IFormatProvider.
Public Class DummyProvider
    Implements IFormatProvider

    ' Normally, GetFormat returns an object of the requested type
    ' (usually itself) if it is able; otherwise, it returns Nothing. 
    Public Function GetFormat( argType As Type ) As Object _
        Implements IFormatProvider.GetFormat

        ' Here, the type of argType is displayed, and GetFormat
        ' always returns Nothing.
        Console.Write( "{0,-40}", argType.ToString( ) )
        Return Nothing

    End Function 
End Class

Module ConvertNonNumericProviderDemo

    Sub Main( )

        ' Create an instance of the IFormatProvider.
        Dim provider    As New DummyProvider( )
        Dim converted   As String

        ' Convert these values using DummyProvider.
        Dim Int32A      As Integer  = -252645135   
        Dim DoubleA     As Double   = 61680.3855
        Dim ObjDouble   As Object   = CType( -98765.4321, Object )
        Dim DayTimeA    As DateTime = _
                            new DateTime( 2001, 9, 11, 13, 45, 0 )

        Dim BoolA       As Boolean  = True
        Dim StringA     As String   = "Qwerty"
        Dim CharA       As Char     = "$"c
        Dim TSpanA      As TimeSpan = New TimeSpan( 0, 18, 0 )
        Dim ObjOther    As Object   = CType( provider, Object )

        Console.WriteLine( "This example of " & _
            "Convert.ToString( non-numeric, IFormatProvider ) " & _
            vbCrLf & "generates the following output. The " & _
            "provider type, argument type, " & vbCrLf & "and " & _
            "argument value are displayed." )
        Console.WriteLine( vbCrLf & _
            "Note: The IFormatProvider object is not called for " & _
            "Boolean, String, " & vbCrLf & "Char, TimeSpan, " & _
            "and non-numeric Object." )

        ' The format provider is called for these conversions.
        Console.WriteLine( )
        converted =  Convert.ToString( Int32A, provider )
        Console.WriteLine( "Int32    {0}", converted )
        converted =  Convert.ToString( DoubleA, provider )
        Console.WriteLine( "Double   {0}", converted )
        converted =  Convert.ToString( ObjDouble, provider )
        Console.WriteLine( "Object   {0}", converted )
        converted =  Convert.ToString( DayTimeA, provider )
        Console.WriteLine( "DateTime {0}", converted )

        ' The format provider is not called for these conversions.
        Console.WriteLine( )
        converted =  Convert.ToString( BoolA, provider )
        Console.WriteLine( "Boolean  {0}", converted )
        converted =  Convert.ToString( StringA, provider )
        Console.WriteLine( "String   {0}", converted )
        converted =  Convert.ToString( CharA, provider )
        Console.WriteLine( "Char     {0}", converted )
        converted =  Convert.ToString( TSpanA, provider )
        Console.WriteLine( "TimeSpan {0}", converted )
        converted =  Convert.ToString( ObjOther, provider )
        Console.WriteLine( "Object   {0}", converted )

    End Sub
End Module

' This example of Convert.ToString( non-numeric, IFormatProvider )
' generates the following output. The provider type, argument type,
' and argument value are displayed.
'
' Note: The IFormatProvider object is not called for Boolean, String,
' Char, TimeSpan, and non-numeric Object.
' 
' System.Globalization.NumberFormatInfo   Int32    -252645135
' System.Globalization.NumberFormatInfo   Double   61680.3855
' System.Globalization.NumberFormatInfo   Object   -98765.4321
' System.Globalization.DateTimeFormatInfo DateTime 9/11/2001 1:45:00 PM
' 
' Boolean  True
' String   Qwerty
' Char     $
' TimeSpan 00:18:00
' Object   DummyProvider

Gilt für

ToString(UInt16, IFormatProvider)

Wichtig

Diese API ist nicht CLS-kompatibel.

Konvertiert den Wert der angegebenen 16-Bit-Ganzzahl ohne Vorzeichen unter Verwendung der angegebenen kulturspezifischen Formatierungsinformationen in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(System::UInt16 value, IFormatProvider ^ provider);
[System.CLSCompliant(false)]
public static string ToString (ushort value, IFormatProvider provider);
[System.CLSCompliant(false)]
public static string ToString (ushort value, IFormatProvider? provider);
[<System.CLSCompliant(false)>]
static member ToString : uint16 * IFormatProvider -> string
Public Shared Function ToString (value As UShort, provider As IFormatProvider) As String

Parameter

value
UInt16

Die zu konvertierende 16-Bit-Ganzzahl ohne Vorzeichen.

provider
IFormatProvider

Ein Objekt, das kulturspezifische Formatierungsinformationen bereitstellt.

Gibt zurück

String

Eine Zeichenfolgendarstellung von value.

Attribute

Beispiele

Im folgenden Beispiel wird eine benutzerdefinierte NumberFormatInfo Klasse definiert, die das negative Zeichen als Zeichenfolge "~" und sein positives Zeichen als Zeichenfolge "!" definiert. Anschließend wird die ToString(UInt16, IFormatProvider) Methode aufgerufen, um einen 16-Bit-Unsignierten ganzzahligen Wert in die entsprechende Zeichenfolgendarstellung zu konvertieren. Die Konvertierung verwendet sowohl die invariante Kultur als auch das benutzerdefinierte NumberFormatInfo Objekt. Die Ausgabe gibt an, dass diese Formatierungsinformationen nicht verwendet werden, da standardmäßig der "G"-Formatbezeichner kein positives Zeichen mit positiven Werten enthält.

ushort number = UInt16.MaxValue;
System.Globalization.NumberFormatInfo nfi = new System.Globalization.NumberFormatInfo();
nfi.NegativeSign = "~";
nfi.PositiveSign = "!";

Console.WriteLine("{0,-6}  -->  {1,6}",
                  Convert.ToString(number, System.Globalization.CultureInfo.InvariantCulture),
                  Convert.ToString(number, nfi));
// The example displays the following output:
//       65535   -->   65535
let number = UInt16.MaxValue
let nfi = NumberFormatInfo()
nfi.NegativeSign <- "~"
nfi.PositiveSign <- "!"

printfn $"{Convert.ToString(number, CultureInfo.InvariantCulture),-6}  -->  {Convert.ToString(number, nfi),6}"
// The example displays the following output:
//       65535   -->   65535
Dim number As UShort = UInt16.MaxValue
Dim nfi As New System.Globalization.NumberFormatInfo()
nfi.NegativeSign = "~"
nfi.PositiveSign = "!"

Console.WriteLine("{0,-6}  -->  {1,6}", _
                  Convert.ToString(number, System.Globalization.CultureInfo.InvariantCulture), _
                  Convert.ToString(number, nfi))
' The example displays the following output:
'       65535   -->   65535

Hinweise

Diese Implementierung ist identisch mit UInt16.ToString(IFormatProvider).

Gilt für

ToString(UInt32, IFormatProvider)

Wichtig

Diese API ist nicht CLS-kompatibel.

Konvertiert den Wert der angegebenen 32-Bit-Ganzzahl ohne Vorzeichen unter Verwendung der angegebenen kulturspezifischen Formatierungsinformationen in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(System::UInt32 value, IFormatProvider ^ provider);
[System.CLSCompliant(false)]
public static string ToString (uint value, IFormatProvider provider);
[System.CLSCompliant(false)]
public static string ToString (uint value, IFormatProvider? provider);
[<System.CLSCompliant(false)>]
static member ToString : uint32 * IFormatProvider -> string
Public Shared Function ToString (value As UInteger, provider As IFormatProvider) As String

Parameter

value
UInt32

Die zu konvertierende 32-Bit-Ganzzahl ohne Vorzeichen.

provider
IFormatProvider

Ein Objekt, das kulturspezifische Formatierungsinformationen bereitstellt.

Gibt zurück

String

Eine Zeichenfolgendarstellung von value.

Attribute

Beispiele

Im folgenden Beispiel wird eine benutzerdefinierte NumberFormatInfo Klasse definiert, die das negative Zeichen als Zeichenfolge "~" und sein positives Zeichen als Zeichenfolge "!" definiert. Anschließend wird die ToString(UInt32, IFormatProvider) Methode aufgerufen, um einen nicht signierten ganzzahligen Wert in die entsprechende Zeichenfolgendarstellung zu konvertieren. Die Konvertierung verwendet sowohl die invariante Kultur als auch das benutzerdefinierte NumberFormatInfo Objekt. Die Ausgabe gibt an, dass diese Formatierungsinformationen nicht verwendet werden, da standardmäßig der "G"-Formatbezeichner kein positives Zeichen mit positiven Werten enthält.

uint number = UInt32.MaxValue;
System.Globalization.NumberFormatInfo nfi = new System.Globalization.NumberFormatInfo();
nfi.NegativeSign = "~";
nfi.PositiveSign = "!";

Console.WriteLine("{0,-8}  -->  {1,8}",
                  Convert.ToString(number, System.Globalization.CultureInfo.InvariantCulture),
                  Convert.ToString(number, nfi));
// The example displays the following output:
//       4294967295  -->  4294967295
let number = UInt32.MaxValue
let nfi = NumberFormatInfo()
nfi.NegativeSign <- "~"
nfi.PositiveSign <- "!"

printfn $"{Convert.ToString(number, CultureInfo.InvariantCulture),-8}  -->  {Convert.ToString(number, nfi),8}"
// The example displays the following output:
//       4294967295  -->  4294967295
Dim number As UInteger = UInt32.MaxValue
Dim nfi As New System.Globalization.NumberFormatInfo()
nfi.NegativeSign = "~"
nfi.PositiveSign = "!"

Console.WriteLine("{0,-8}  -->  {1,8}", _
                  Convert.ToString(number, System.Globalization.CultureInfo.InvariantCulture), _
                  Convert.ToString(number, nfi))
' The example displays the following output:
'       4294967295  -->  4294967295

Hinweise

Diese Implementierung ist identisch mit UInt32.ToString(IFormatProvider).

Gilt für

ToString(UInt64, IFormatProvider)

Wichtig

Diese API ist nicht CLS-kompatibel.

Konvertiert den Wert der angegebenen 64-Bit-Ganzzahl ohne Vorzeichen unter Verwendung der angegebenen kulturspezifischen Formatierungsinformationen in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(System::UInt64 value, IFormatProvider ^ provider);
[System.CLSCompliant(false)]
public static string ToString (ulong value, IFormatProvider provider);
[System.CLSCompliant(false)]
public static string ToString (ulong value, IFormatProvider? provider);
[<System.CLSCompliant(false)>]
static member ToString : uint64 * IFormatProvider -> string
Public Shared Function ToString (value As ULong, provider As IFormatProvider) As String

Parameter

value
UInt64

Die zu konvertierende 64-Bit-Ganzzahl ohne Vorzeichen.

provider
IFormatProvider

Ein Objekt, das kulturspezifische Formatierungsinformationen bereitstellt.

Gibt zurück

String

Eine Zeichenfolgendarstellung von value.

Attribute

Beispiele

Im folgenden Beispiel wird eine benutzerdefinierte NumberFormatInfo Klasse definiert, die das negative Zeichen als Zeichenfolge "~" und sein positives Zeichen als Zeichenfolge "!" definiert. Anschließend wird die ToString(UInt64, IFormatProvider) Methode aufgerufen, um einen nicht signierten langen ganzzahligen Wert in die entsprechende Zeichenfolgendarstellung zu konvertieren. Die Konvertierung verwendet sowohl die invariante Kultur als auch das benutzerdefinierte NumberFormatInfo Objekt. Die Ausgabe gibt an, dass diese Formatierungsinformationen nicht verwendet werden, da standardmäßig der "G"-Formatbezeichner kein positives Zeichen mit positiven Werten enthält.

ulong number = UInt64.MaxValue;
System.Globalization.NumberFormatInfo nfi = new System.Globalization.NumberFormatInfo();
nfi.NegativeSign = "~";
nfi.PositiveSign = "!";

Console.WriteLine("{0,-12}  -->  {1,12}",
                  Convert.ToString(number, System.Globalization.CultureInfo.InvariantCulture),
                  Convert.ToString(number, nfi));
// The example displays the following output:
//    18446744073709551615  -->  18446744073709551615
let number = UInt64.MaxValue
let nfi = NumberFormatInfo()
nfi.NegativeSign <- "~"
nfi.PositiveSign <- "!"

printfn $"{Convert.ToString(number, CultureInfo.InvariantCulture),-12}  -->  {Convert.ToString(number, nfi),12}"
// The example displays the following output:
//    18446744073709551615  -->  18446744073709551615
Dim number As ULong = UInt64.MaxValue
Dim nfi As New System.Globalization.NumberFormatInfo()
nfi.NegativeSign = "~"
nfi.PositiveSign = "!"

Console.WriteLine("{0,-12}  -->  {1,12}", _
                  Convert.ToString(number, System.Globalization.CultureInfo.InvariantCulture), _
                  Convert.ToString(number, nfi))
' The example displays the following output:
'    18446744073709551615  -->  18446744073709551615

Hinweise

Diese Implementierung ist identisch mit UInt64.ToString(IFormatProvider).

Gilt für

ToString(DateTime, IFormatProvider)

Konvertiert den Wert der angegebenen DateTime unter Verwendung der angegebenen kulturspezifischen Formatierungsinformationen in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(DateTime value, IFormatProvider ^ provider);
public static string ToString (DateTime value, IFormatProvider provider);
public static string ToString (DateTime value, IFormatProvider? provider);
static member ToString : DateTime * IFormatProvider -> string
Public Shared Function ToString (value As DateTime, provider As IFormatProvider) As String

Parameter

value
DateTime

Der Datums- und Uhrzeitwert, der konvertiert werden soll.

provider
IFormatProvider

Ein Objekt, das kulturspezifische Formatierungsinformationen bereitstellt.

Gibt zurück

String

Eine Zeichenfolgendarstellung von value.

Beispiele

Im folgenden Beispiel wird ein DateTime Wert in die entsprechende Zeichenfolgendarstellung in acht verschiedenen Kulturen konvertiert.

// Specify the date to be formatted using various cultures.
DateTime tDate = new DateTime(2010, 4, 15, 20, 30, 40, 333);
// Specify the cultures.
string[] cultureNames = { "en-US", "es-AR", "fr-FR", "hi-IN",
                          "ja-JP", "nl-NL", "ru-RU", "ur-PK" };

Console.WriteLine("Converting the date {0}: ",
                  Convert.ToString(tDate,
                          System.Globalization.CultureInfo.InvariantCulture));

foreach (string cultureName in cultureNames)
{
   System.Globalization.CultureInfo culture = new System.Globalization.CultureInfo(cultureName);
   string dateString = Convert.ToString(tDate, culture);
   Console.WriteLine("   {0}:  {1,-12}",
                     culture.Name, dateString);
}
// The example displays the following output:
//       Converting the date 04/15/2010 20:30:40:
//          en-US:  4/15/2010 8:30:40 PM
//          es-AR:  15/04/2010 08:30:40 p.m.
//          fr-FR:  15/04/2010 20:30:40
//          hi-IN:  15-04-2010 20:30:40
//          ja-JP:  2010/04/15 20:30:40
//          nl-NL:  15-4-2010 20:30:40
//          ru-RU:  15.04.2010 20:30:40
//          ur-PK:  15/04/2010 8:30:40 PM
// Specify the date to be formatted using various cultures.
let tDate = DateTime(2010, 4, 15, 20, 30, 40, 333)
// Specify the cultures.
let cultureNames = 
    [| "en-US"; "es-AR"; "fr-FR"; "hi-IN";
        "ja-JP"; "nl-NL"; "ru-RU"; "ur-PK" |]

printfn $"Converting the date {Convert.ToString(tDate, CultureInfo.InvariantCulture)}: "

for cultureName in cultureNames do
    let culture = CultureInfo cultureName
    let dateString = Convert.ToString(tDate, culture)
    printfn $"   {culture.Name}:  {dateString,-12}"
// The example displays the following output:
//       Converting the date 04/15/2010 20:30:40:
//          en-US:  4/15/2010 8:30:40 PM
//          es-AR:  15/04/2010 08:30:40 p.m.
//          fr-FR:  15/04/2010 20:30:40
//          hi-IN:  15-04-2010 20:30:40
//          ja-JP:  2010/04/15 20:30:40
//          nl-NL:  15-4-2010 20:30:40
//          ru-RU:  15.04.2010 20:30:40
//          ur-PK:  15/04/2010 8:30:40 PM
' Specify the date to be formatted using various cultures.
Dim tDate As New Date(2010, 4, 15, 20, 30, 40, 333)
' Specify the cultures.
Dim cultureNames() As String = { "en-US", "es-AR", "fr-FR", "hi-IN", _
                                 "ja-JP", "nl-NL", "ru-RU", "ur-PK" }

Console.WriteLine("Converting the date {0}: ", _
                  Convert.ToString(tDate, _
                          System.Globalization.CultureInfo.InvariantCulture))

For Each cultureName As String In CultureNames
   Dim culture As New System.Globalization.CultureInfo(cultureName)
   Dim dateString As String = Convert.ToString(tDate, culture)
   Console.WriteLine("   {0}:  {1,-12}", _
                     culture.Name, dateString)
Next             
' The example displays the following output:
'       Converting the date 04/15/2010 20:30:40:
'          en-US:  4/15/2010 8:30:40 PM
'          es-AR:  15/04/2010 08:30:40 p.m.
'          fr-FR:  15/04/2010 20:30:40
'          hi-IN:  15-04-2010 20:30:40
'          ja-JP:  2010/04/15 20:30:40
'          nl-NL:  15-4-2010 20:30:40
'          ru-RU:  15.04.2010 20:30:40
'          ur-PK:  15/04/2010 8:30:40 PM

Hinweise

Diese Implementierung ist identisch mit DateTime.ToString(IFormatProvider).

Gilt für

ToString(Int64, Int32)

Konvertiert den Wert einer 64-Bit-Ganzzahl mit Vorzeichen in die entsprechende Zeichenfolgendarstellung in einer angegebenen Basis.

public:
 static System::String ^ ToString(long value, int toBase);
public static string ToString (long value, int toBase);
static member ToString : int64 * int -> string
Public Shared Function ToString (value As Long, toBase As Integer) As String

Parameter

value
Int64

Die zu konvertierende 64-Bit-Ganzzahl mit Vorzeichen.

toBase
Int32

Die Basis des Rückgabewerts, die 2, 8, 10 oder 16 sein muss.

Gibt zurück

String

Die Zeichenfolgendarstellung von value zur Basis toBase.

Ausnahmen

toBase ist nicht 2, 8, 10 oder 16.

Beispiele

Im folgenden Beispiel werden jedes Element in einem langen ganzzahligen Array in seine äquivalente binäre, hexadezimale, dezimale, dezimale und hexadezimale Zeichenfolgendarstellung konvertiert.

int[] bases = { 2, 8, 10, 16};
long[] numbers = { Int64.MinValue, -193275430, -13621, -18, 12,
                   1914206117, Int64.MaxValue };

foreach (int baseValue in bases)
{
   Console.WriteLine("Base {0} conversion:", baseValue);
   foreach (long number in numbers)
   {
      Console.WriteLine("   {0,-23}  -->  0x{1}",
                        number, Convert.ToString(number, baseValue));
   }
}
// The example displays the following output:
//    Base 2 conversion:
//       -9223372036854775808     -->  0x1000000000000000000000000000000000000000000000000000000000000000
//       -193275430               -->  0x1111111111111111111111111111111111110100011110101101100111011010
//       -13621                   -->  0x1111111111111111111111111111111111111111111111111100101011001011
//       -18                      -->  0x1111111111111111111111111111111111111111111111111111111111101110
//       12                       -->  0x1100
//       1914206117               -->  0x1110010000110000111011110100101
//       9223372036854775807      -->  0x111111111111111111111111111111111111111111111111111111111111111
//    Base 8 conversion:
//       -9223372036854775808     -->  0x1000000000000000000000
//       -193275430               -->  0x1777777777776436554732
//       -13621                   -->  0x1777777777777777745313
//       -18                      -->  0x1777777777777777777756
//       12                       -->  0x14
//       1914206117               -->  0x16206073645
//       9223372036854775807      -->  0x777777777777777777777
//    Base 10 conversion:
//       -9223372036854775808     -->  0x-9223372036854775808
//       -193275430               -->  0x-193275430
//       -13621                   -->  0x-13621
//       -18                      -->  0x-18
//       12                       -->  0x12
//       1914206117               -->  0x1914206117
//       9223372036854775807      -->  0x9223372036854775807
//    Base 16 conversion:
//       -9223372036854775808     -->  0x8000000000000000
//       -193275430               -->  0xfffffffff47ad9da
//       -13621                   -->  0xffffffffffffcacb
//       -18                      -->  0xffffffffffffffee
//       12                       -->  0xc
//       1914206117               -->  0x721877a5
//       9223372036854775807      -->  0x7fffffffffffffff
let bases = [| 2; 8; 10; 16 |]
let numbers =
    [| Int64.MinValue; -193275430; -13621; -18; 12; 1914206117; Int64.MaxValue |]

for baseValue in bases do
    printfn $"Base {baseValue} conversion:"
    for number in numbers do
        printfn $"   {number,-23}  -->  0x{Convert.ToString(number, baseValue)}"
// The example displays the following output:
//    Base 2 conversion:
//       -9223372036854775808     -->  0x1000000000000000000000000000000000000000000000000000000000000000
//       -193275430               -->  0x1111111111111111111111111111111111110100011110101101100111011010
//       -13621                   -->  0x1111111111111111111111111111111111111111111111111100101011001011
//       -18                      -->  0x1111111111111111111111111111111111111111111111111111111111101110
//       12                       -->  0x1100
//       1914206117               -->  0x1110010000110000111011110100101
//       9223372036854775807      -->  0x111111111111111111111111111111111111111111111111111111111111111
//    Base 8 conversion:
//       -9223372036854775808     -->  0x1000000000000000000000
//       -193275430               -->  0x1777777777776436554732
//       -13621                   -->  0x1777777777777777745313
//       -18                      -->  0x1777777777777777777756
//       12                       -->  0x14
//       1914206117               -->  0x16206073645
//       9223372036854775807      -->  0x777777777777777777777
//    Base 10 conversion:
//       -9223372036854775808     -->  0x-9223372036854775808
//       -193275430               -->  0x-193275430
//       -13621                   -->  0x-13621
//       -18                      -->  0x-18
//       12                       -->  0x12
//       1914206117               -->  0x1914206117
//       9223372036854775807      -->  0x9223372036854775807
//    Base 16 conversion:
//       -9223372036854775808     -->  0x8000000000000000
//       -193275430               -->  0xfffffffff47ad9da
//       -13621                   -->  0xffffffffffffcacb
//       -18                      -->  0xffffffffffffffee
//       12                       -->  0xc
//       1914206117               -->  0x721877a5
//       9223372036854775807      -->  0x7fffffffffffffff
Dim bases() As Integer = { 2, 8, 10, 16}
Dim numbers() As Long = { Int64.MinValue, -193275430, -13621, -18, 12, _
                             1914206117, Int64.MaxValue }

For Each base As Integer In bases
   Console.WriteLine("Base {0} conversion:", base)
   For Each number As Long In numbers
      Console.WriteLine("   {0,-23}  -->  0x{1}", _
                        number, Convert.ToString(number, base))
   Next
Next
' The example displays the following output:
'    Base 2 conversion:
'       -9223372036854775808     -->  0x1000000000000000000000000000000000000000000000000000000000000000
'       -193275430               -->  0x1111111111111111111111111111111111110100011110101101100111011010
'       -13621                   -->  0x1111111111111111111111111111111111111111111111111100101011001011
'       -18                      -->  0x1111111111111111111111111111111111111111111111111111111111101110
'       12                       -->  0x1100
'       1914206117               -->  0x1110010000110000111011110100101
'       9223372036854775807      -->  0x111111111111111111111111111111111111111111111111111111111111111
'    Base 8 conversion:
'       -9223372036854775808     -->  0x1000000000000000000000
'       -193275430               -->  0x1777777777776436554732
'       -13621                   -->  0x1777777777777777745313
'       -18                      -->  0x1777777777777777777756
'       12                       -->  0x14
'       1914206117               -->  0x16206073645
'       9223372036854775807      -->  0x777777777777777777777
'    Base 10 conversion:
'       -9223372036854775808     -->  0x-9223372036854775808
'       -193275430               -->  0x-193275430
'       -13621                   -->  0x-13621
'       -18                      -->  0x-18
'       12                       -->  0x12
'       1914206117               -->  0x1914206117
'       9223372036854775807      -->  0x9223372036854775807
'    Base 16 conversion:
'       -9223372036854775808     -->  0x8000000000000000
'       -193275430               -->  0xfffffffff47ad9da
'       -13621                   -->  0xffffffffffffcacb
'       -18                      -->  0xffffffffffffffee
'       12                       -->  0xc
'       1914206117               -->  0x721877a5
'       9223372036854775807      -->  0x7fffffffffffffff
let bases = [2; 8; 10; 16]
let numbers = [ Int64.MinValue; -193275430L; -13621L; -18L; 12L; 1914206117L; Int64.MaxValue ]

for baseValue in bases do
    printfn "Base %i conversion:" baseValue
    for number in numbers do
        printfn "   % -23i  -->  0x%s" number (Convert.ToString (number, baseValue))
// The example displays the following output:
//     Base 2 conversion:
//        -9223372036854775808     -->  0x1000000000000000000000000000000000000000000000000000000000000000
//        -193275430               -->  0x1111111111111111111111111111111111110100011110101101100111011010
//        -13621                   -->  0x1111111111111111111111111111111111111111111111111100101011001011
//        -18                      -->  0x1111111111111111111111111111111111111111111111111111111111101110
//         12                      -->  0x1100
//         1914206117              -->  0x1110010000110000111011110100101
//         9223372036854775807     -->  0x111111111111111111111111111111111111111111111111111111111111111
//     Base 8 conversion:
//        -9223372036854775808     -->  0x1000000000000000000000
//        -193275430               -->  0x1777777777776436554732
//        -13621                   -->  0x1777777777777777745313
//        -18                      -->  0x1777777777777777777756
//         12                      -->  0x14
//         1914206117              -->  0x16206073645
//         9223372036854775807     -->  0x777777777777777777777
//     Base 10 conversion:
//        -9223372036854775808     -->  0x-9223372036854775808
//        -193275430               -->  0x-193275430
//        -13621                   -->  0x-13621
//        -18                      -->  0x-18
//         12                      -->  0x12
//         1914206117              -->  0x1914206117
//         9223372036854775807     -->  0x9223372036854775807
//     Base 16 conversion:
//        -9223372036854775808     -->  0x8000000000000000
//        -193275430               -->  0xfffffffff47ad9da
//        -13621                   -->  0xffffffffffffcacb
//        -18                      -->  0xffffffffffffffee
//         12                      -->  0xc
//         1914206117              -->  0x721877a5
//         9223372036854775807     -->  0x7fffffffffffffff

Hinweise

Wenn value sie positiv ist und toBase nicht 10 ist, verwendet die zurückgegebene Zeichenfolge die Darstellung von Zeichen und Größen. Wenn value dies negativ ist und toBase nicht 10 ist, verwendet die zurückgegebene Zeichenfolge zwei Ergänzungsdarstellungen. Dies bedeutet, dass das Hochreihenfolgen-Bit des höchsten Bytes (Bit 63) als Zeichenbit interpretiert wird. Wenn die ToString(Int64, Int32) Methode aufgerufen wird, um eine Zeichenfolge zu erstellen, die später in eine Zahl konvertiert wird, sollte eine entsprechende Methode, die davon ausgeht, dass eine ähnliche numerische Darstellung aufgerufen werden soll, um die Konvertierung auszuführen. Solche Methoden umfassen Convert.ToInt64(String, Int32) und Int64.Parse(String, NumberStyles).

Gilt für

ToString(Char, IFormatProvider)

Konvertiert den Wert des angegebenen Unicode-Zeichens unter Verwendung der angegebenen kulturspezifischen Formatierungsinformationen in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(char value, IFormatProvider ^ provider);
public static string ToString (char value, IFormatProvider provider);
public static string ToString (char value, IFormatProvider? provider);
static member ToString : char * IFormatProvider -> string
Public Shared Function ToString (value As Char, provider As IFormatProvider) As String

Parameter

value
Char

Das zu konvertierende Unicode-Zeichen.

provider
IFormatProvider

Ein Objekt, das kulturspezifische Formatierungsinformationen bereitstellt. Konvertiert die Zeichenfolgendarstellung einer Zahl in einem angegebenen Stil und einem kulturspezifischen Format in die entsprechende 32-Bit-Ganzzahl mit Vorzeichen.

Gibt zurück

String

Eine Zeichenfolgendarstellung von value.

Beispiele

Im folgenden Beispiel wird ein Wert in String eine IFormatProvider mit der Methode konvertiert, indem ein Char Objekt verwendet wird, das den Typ des Formatanbieters anzeigt, für den ToString er aufgerufen wird. Das Beispiel zeigt, dass das IFormatProvider Objekt nicht darauf verwiesen wird.

// Example of Convert::ToString( non-numeric types, IFormatProvider ).
using namespace System;
using namespace System::Globalization;

#define null (Object^)0

// An instance of this class can be passed to methods that require 
// an IFormatProvider.
ref class DummyProvider: public IFormatProvider
{
public:

   // Normally, GetFormat returns an object of the requested type
   // (usually itself) if it is able; otherwise, it returns Nothing. 
   virtual Object^ GetFormat( Type^ argType )
   {
      // Here, the type of argType is displayed, and GetFormat
      // always returns Nothing.
      Console::Write( "{0,-40}", argType->ToString() );
      return null;
   }
};

int main()
{
   // Create an instance of the IFormatProvider.
   DummyProvider^ provider = gcnew DummyProvider;
   String^ converted;

   // Convert these values using DummyProvider.
   int Int32A = -252645135;
   double DoubleA = 61680.3855;
   Object^ ObjDouble =  -98765.4321;
   DateTime DayTimeA = DateTime(2001,9,11,13,45,0);
   bool BoolA = true;
   String^ StringA = "Qwerty";
   Char CharA = '$';
   TimeSpan TSpanA = TimeSpan(0,18,0);
   Object^ ObjOther = static_cast<Object^>(provider);
   Console::WriteLine( "This example of "
   "Convert::ToString( non-numeric, IFormatProvider* ) \n"
   "generates the following output. The provider type, "
   "argument type, \nand argument value are displayed." );
   Console::WriteLine( "\nNote: The IFormatProvider object is "
   "not called for Boolean, String, \nChar, TimeSpan, "
   "and non-numeric Object." );

   // The format provider is called for these conversions.
   Console::WriteLine();
   converted = Convert::ToString( Int32A, provider );
   Console::WriteLine( "int      {0}", converted );
   converted = Convert::ToString( DoubleA, provider );
   Console::WriteLine( "double   {0}", converted );
   converted = Convert::ToString( ObjDouble, provider );
   Console::WriteLine( "Object   {0}", converted );
   converted = Convert::ToString( DayTimeA, provider );
   Console::WriteLine( "DateTime {0}", converted );

   // The format provider is not called for these conversions.
   Console::WriteLine();
   converted = Convert::ToString( BoolA, provider );
   Console::WriteLine( "bool     {0}", converted );
   converted = Convert::ToString( StringA, provider );
   Console::WriteLine( "String   {0}", converted );
   converted = Convert::ToString( CharA, provider );
   Console::WriteLine( "Char     {0}", converted );
   converted = Convert::ToString( TSpanA, provider );
   Console::WriteLine( "TimeSpan {0}", converted );
   converted = Convert::ToString( ObjOther, provider );
   Console::WriteLine( "Object   {0}", converted );
}

/*
This example of Convert::ToString( non-numeric, IFormatProvider* )
generates the following output. The provider type, argument type,
and argument value are displayed.

Note: The IFormatProvider object is not called for Boolean, String,
Char, TimeSpan, and non-numeric Object.

System.Globalization.NumberFormatInfo   int      -252645135
System.Globalization.NumberFormatInfo   double   61680.3855
System.Globalization.NumberFormatInfo   Object   -98765.4321
System.Globalization.DateTimeFormatInfo DateTime 9/11/2001 1:45:00 PM

bool     True
String   Qwerty
Char     $
TimeSpan 00:18:00
Object   DummyProvider
*/
// Example of Convert.ToString( non-numeric types, IFormatProvider ).
using System;
using System.Globalization;

// An instance of this class can be passed to methods that require
// an IFormatProvider.
public class DummyProvider : IFormatProvider
{
    // Normally, GetFormat returns an object of the requested type
    // (usually itself) if it is able; otherwise, it returns Nothing.
    public object GetFormat( Type argType )
    {
        // Here, the type of argType is displayed, and GetFormat
        // always returns Nothing.
        Console.Write( "{0,-40}", argType.ToString( ) );
        return null;
    }
}

class ConvertNonNumericProviderDemo
{
    static void Main( )
    {
        // Create an instance of the IFormatProvider.
        DummyProvider provider = new DummyProvider( );
        string converted;

        // Convert these values using DummyProvider.
        int      Int32A     = -252645135;
        double   DoubleA    = 61680.3855;
        object   ObjDouble  = (object)( -98765.4321 );
        DateTime DayTimeA   = new DateTime( 2001, 9, 11, 13, 45, 0 );

        bool     BoolA      = true;
        string   StringA    = "Qwerty";
        char     CharA      = '$';
        TimeSpan TSpanA     = new TimeSpan( 0, 18, 0 );
        object   ObjOther   = (object)provider;

        Console.WriteLine( "This example of " +
            "Convert.ToString( non-numeric, IFormatProvider ) \n" +
            "generates the following output. The provider type, " +
            "argument type, \nand argument value are displayed." );
        Console.WriteLine( "\nNote: The IFormatProvider object is " +
            "not called for Boolean, String, \nChar, TimeSpan, " +
            "and non-numeric Object." );

        // The format provider is called for these conversions.
        Console.WriteLine( );
        converted = Convert.ToString( Int32A, provider );
        Console.WriteLine( "int      {0}", converted );
        converted = Convert.ToString( DoubleA, provider );
        Console.WriteLine( "double   {0}", converted );
        converted = Convert.ToString( ObjDouble, provider );
        Console.WriteLine( "object   {0}", converted );
        converted = Convert.ToString( DayTimeA, provider );
        Console.WriteLine( "DateTime {0}", converted );

        // The format provider is not called for these conversions.
        Console.WriteLine( );
        converted = Convert.ToString( BoolA, provider );
        Console.WriteLine( "bool     {0}", converted );
        converted = Convert.ToString( StringA, provider );
        Console.WriteLine( "string   {0}", converted );
        converted = Convert.ToString( CharA, provider );
        Console.WriteLine( "char     {0}", converted );
        converted = Convert.ToString( TSpanA, provider );
        Console.WriteLine( "TimeSpan {0}", converted );
        converted = Convert.ToString( ObjOther, provider );
        Console.WriteLine( "object   {0}", converted );
    }
}

/*
This example of Convert.ToString( non-numeric, IFormatProvider )
generates the following output. The provider type, argument type,
and argument value are displayed.

Note: The IFormatProvider object is not called for Boolean, String,
Char, TimeSpan, and non-numeric Object.

System.Globalization.NumberFormatInfo   int      -252645135
System.Globalization.NumberFormatInfo   double   61680.3855
System.Globalization.NumberFormatInfo   object   -98765.4321
System.Globalization.DateTimeFormatInfo DateTime 9/11/2001 1:45:00 PM

bool     True
string   Qwerty
char     $
TimeSpan 00:18:00
object   DummyProvider

*/
// Example of Convert.ToString(non-numeric types, IFormatProvider).
open System
open System.Globalization

// Create an instance of the IFormatProvider with an object expression.
let provider =
    { new IFormatProvider with
        // Normally, GetFormat returns an object of the requested type
        // (usually itself) if it is able; otherwise, it returns Nothing.
        member _.GetFormat(argType: Type) =
            // Here, the type of argType is displayed, and GetFormat
            // always returns Nothing.
            printf $"{argType,-40}"
            null 
    }

// Convert these values using DummyProvider.
let Int32A     = -252645135
let DoubleA    = 61680.3855
let ObjDouble  = -98765.4321 :> obj
let DayTimeA   = DateTime(2001, 9, 11, 13, 45, 0)

let BoolA      = true
let StringA    = "Qwerty"
let CharA      = '$'
let TSpanA     = TimeSpan(0, 18, 0)
let ObjOther   = provider :> obj

[<EntryPoint>]
let main _ =
    printfn
        """This example of Convert.ToString(non-numeric, IFormatProvider) 
generates the following output. The provider type, argument type, 
and argument value are displayed.

Note: The IFormatProvider object is not called for Boolean, String, 
Char, TimeSpan, and non-numeric Object."""

    // The format provider is called for these conversions.
    printfn ""
    let converted = Convert.ToString(Int32A, provider)
    printfn $"int      {converted}"
    let converted = Convert.ToString(DoubleA, provider)
    printfn $"double   {converted}"
    let converted = Convert.ToString(ObjDouble, provider)
    printfn $"object   {converted}"
    let converted = Convert.ToString(DayTimeA, provider)
    printfn $"DateTime {converted}"

    // The format provider is not called for these conversions.
    printfn ""
    let converted = Convert.ToString(BoolA, provider)
    printfn $"bool     {converted}"
    let converted = Convert.ToString(StringA, provider)
    printfn $"string   {converted}"
    let converted = Convert.ToString(CharA, provider)
    printfn $"char     {converted}"
    let converted = Convert.ToString(TSpanA, provider)
    printfn $"TimeSpan {converted}"
    let converted = Convert.ToString(ObjOther, provider)
    printfn $"object   {converted}"

    0

// This example of Convert.ToString(non-numeric, IFormatProvider)
// generates the following output. The provider type, argument type,
// and argument value are displayed.
//
// Note: The IFormatProvider object is not called for Boolean, String,
// Char, TimeSpan, and non-numeric Object.
//
// System.Globalization.NumberFormatInfo   int      -252645135
// System.Globalization.NumberFormatInfo   double   61680.3855
// System.Globalization.NumberFormatInfo   object   -98765.4321
// System.Globalization.DateTimeFormatInfo DateTime 9/11/2001 1:45:00 PM
//
// bool     True
// string   Qwerty
// char     $
// TimeSpan 00:18:00
// object   DummyProvider
' Example of Convert.ToString( non-numeric types, IFormatProvider ).
Imports System.Globalization

' An instance of this class can be passed to methods that require 
' an IFormatProvider.
Public Class DummyProvider
    Implements IFormatProvider

    ' Normally, GetFormat returns an object of the requested type
    ' (usually itself) if it is able; otherwise, it returns Nothing. 
    Public Function GetFormat( argType As Type ) As Object _
        Implements IFormatProvider.GetFormat

        ' Here, the type of argType is displayed, and GetFormat
        ' always returns Nothing.
        Console.Write( "{0,-40}", argType.ToString( ) )
        Return Nothing

    End Function 
End Class

Module ConvertNonNumericProviderDemo

    Sub Main( )

        ' Create an instance of the IFormatProvider.
        Dim provider    As New DummyProvider( )
        Dim converted   As String

        ' Convert these values using DummyProvider.
        Dim Int32A      As Integer  = -252645135   
        Dim DoubleA     As Double   = 61680.3855
        Dim ObjDouble   As Object   = CType( -98765.4321, Object )
        Dim DayTimeA    As DateTime = _
                            new DateTime( 2001, 9, 11, 13, 45, 0 )

        Dim BoolA       As Boolean  = True
        Dim StringA     As String   = "Qwerty"
        Dim CharA       As Char     = "$"c
        Dim TSpanA      As TimeSpan = New TimeSpan( 0, 18, 0 )
        Dim ObjOther    As Object   = CType( provider, Object )

        Console.WriteLine( "This example of " & _
            "Convert.ToString( non-numeric, IFormatProvider ) " & _
            vbCrLf & "generates the following output. The " & _
            "provider type, argument type, " & vbCrLf & "and " & _
            "argument value are displayed." )
        Console.WriteLine( vbCrLf & _
            "Note: The IFormatProvider object is not called for " & _
            "Boolean, String, " & vbCrLf & "Char, TimeSpan, " & _
            "and non-numeric Object." )

        ' The format provider is called for these conversions.
        Console.WriteLine( )
        converted =  Convert.ToString( Int32A, provider )
        Console.WriteLine( "Int32    {0}", converted )
        converted =  Convert.ToString( DoubleA, provider )
        Console.WriteLine( "Double   {0}", converted )
        converted =  Convert.ToString( ObjDouble, provider )
        Console.WriteLine( "Object   {0}", converted )
        converted =  Convert.ToString( DayTimeA, provider )
        Console.WriteLine( "DateTime {0}", converted )

        ' The format provider is not called for these conversions.
        Console.WriteLine( )
        converted =  Convert.ToString( BoolA, provider )
        Console.WriteLine( "Boolean  {0}", converted )
        converted =  Convert.ToString( StringA, provider )
        Console.WriteLine( "String   {0}", converted )
        converted =  Convert.ToString( CharA, provider )
        Console.WriteLine( "Char     {0}", converted )
        converted =  Convert.ToString( TSpanA, provider )
        Console.WriteLine( "TimeSpan {0}", converted )
        converted =  Convert.ToString( ObjOther, provider )
        Console.WriteLine( "Object   {0}", converted )

    End Sub
End Module

' This example of Convert.ToString( non-numeric, IFormatProvider )
' generates the following output. The provider type, argument type,
' and argument value are displayed.
'
' Note: The IFormatProvider object is not called for Boolean, String,
' Char, TimeSpan, and non-numeric Object.
' 
' System.Globalization.NumberFormatInfo   Int32    -252645135
' System.Globalization.NumberFormatInfo   Double   61680.3855
' System.Globalization.NumberFormatInfo   Object   -98765.4321
' System.Globalization.DateTimeFormatInfo DateTime 9/11/2001 1:45:00 PM
' 
' Boolean  True
' String   Qwerty
' Char     $
' TimeSpan 00:18:00
' Object   DummyProvider

Hinweise

Diese Implementierung ist identisch mit Char.ToString(). Der provider Parameter wird ignoriert.

Gilt für

ToString(UInt32)

Wichtig

Diese API ist nicht CLS-kompatibel.

Konvertiert den Wert der angegebenen 32-Bit-Ganzzahl ohne Vorzeichen in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(System::UInt32 value);
[System.CLSCompliant(false)]
public static string ToString (uint value);
[<System.CLSCompliant(false)>]
static member ToString : uint32 -> string
Public Shared Function ToString (value As UInteger) As String

Parameter

value
UInt32

Die zu konvertierende 32-Bit-Ganzzahl ohne Vorzeichen.

Gibt zurück

String

Eine Zeichenfolgendarstellung von value.

Attribute

Beispiele

Im folgenden Beispiel wird jedes Element in ein nicht signiertes ganzzahliges Array in die entsprechende Zeichenfolgendarstellung konvertiert.

uint[] numbers = { UInt32.MinValue, 103, 1045, 119543, UInt32.MaxValue };
string result;

foreach (uint number in numbers)
{
   result = Convert.ToString(number);
   Console.WriteLine("Converted the {0} value {1} to the {2} value {3}.",
                        number.GetType().Name, number,
                        result.GetType().Name, result);
}
// The example displays the following output:
//    Converted the UInt32 value 0 to the String value 0.
//    Converted the UInt32 value 103 to the String value 103.
//    Converted the UInt32 value 1045 to the String value 1045.
//    Converted the UInt32 value 119543 to the String value 119543.
//    Converted the UInt32 value 4294967295 to the String value 4294967295.
let numbers = [| UInt32.MinValue; 103u; 1045u; 119543u; UInt32.MaxValue |]

for number in numbers do
    let result = Convert.ToString number
    printfn $"Converted the {number.GetType().Name} value {number} to the {result.GetType().Name} value {result}."
// The example displays the following output:
//    Converted the UInt32 value 0 to the String value 0.
//    Converted the UInt32 value 103 to the String value 103.
//    Converted the UInt32 value 1045 to the String value 1045.
//    Converted the UInt32 value 119543 to the String value 119543.
//    Converted the UInt32 value 4294967295 to the String value 4294967295.
Dim numbers() As UInteger = { UInt32.MinValue, 103, 1045, 119543, UInt32.MaxValue }
Dim result As String

For Each number As UInteger In numbers
   result = Convert.ToString(number)
   Console.WriteLine("Converted the {0} value {1} to the {2} value {3}.", _
                        number.GetType().Name, number, _
                        result.GetType().Name, result)
Next
' The example displays the following output:
'    Converted the UInt32 value 0 to the String value 0.
'    Converted the UInt32 value 103 to the String value 103.
'    Converted the UInt32 value 1045 to the String value 1045.
'    Converted the UInt32 value 119543 to the String value 119543.
'    Converted the UInt32 value 4294967295 to the String value 4294967295.

Hinweise

Diese Implementierung ist identisch mit UInt32.ToString().

Gilt für

ToString(Byte, IFormatProvider)

Konvertiert den Wert der angegebenen 8-Bit-Ganzzahl ohne Vorzeichen unter Verwendung der angegebenen kulturspezifischen Formatierungsinformationen in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(System::Byte value, IFormatProvider ^ provider);
public static string ToString (byte value, IFormatProvider provider);
public static string ToString (byte value, IFormatProvider? provider);
static member ToString : byte * IFormatProvider -> string
Public Shared Function ToString (value As Byte, provider As IFormatProvider) As String

Parameter

value
Byte

Die zu konvertierende 8-Bit-Ganzzahl ohne Vorzeichen.

provider
IFormatProvider

Ein Objekt, das kulturspezifische Formatierungsinformationen bereitstellt.

Gibt zurück

String

Eine Zeichenfolgendarstellung von value.

Beispiele

Im folgenden Beispiel wird jedes Element in ein nicht signiertes Bytearray in die entsprechende Zeichenfolgendarstellung konvertiert, indem die Formatierungskonventionen der Kulturen en-US und fr-FR verwendet werden. Da der "G"-Bezeichner standardmäßig nur dezimale Ziffern in der Zeichenfolgendarstellung eines Bytewerts ausgibt, provider wirkt sich der Parameter nicht auf die Formatierung der zurückgegebenen Zeichenfolge aus.

byte[] numbers = { 12, 100, Byte.MaxValue };
// Define the culture names used to display them.
string[] cultureNames = { "en-US", "fr-FR" };

foreach (byte number in numbers)
{
   Console.WriteLine("{0}:", Convert.ToString(number,
                             System.Globalization.CultureInfo.InvariantCulture));
   foreach (string cultureName in cultureNames)
   {
      System.Globalization.CultureInfo culture = new System.Globalization.CultureInfo(cultureName);
      Console.WriteLine("   {0}: {1,20}",
                        culture.Name, Convert.ToString(number, culture));
   }
   Console.WriteLine();
}
// The example displays the following output:
//       12:
//          en-US:                   12
//          fr-FR:                   12
//
//       100:
//          en-US:                  100
//          fr-FR:                  100
//
//       255:
//          en-US:                  255
//          fr-FR:                  255
let numbers = [| 12uy; 100uy; Byte.MaxValue |]
// Define the culture names used to display them.
let cultureNames = [| "en-US"; "fr-FR" |]

for number in numbers do
    printfn $"{Convert.ToString(number, CultureInfo.InvariantCulture)}:"
    for cultureName in cultureNames do
        let culture = CultureInfo cultureName
        printfn $"   {culture.Name}: {Convert.ToString(number, culture),20}"
    printfn ""
// The example displays the following output:
//       12:
//          en-US:                   12
//          fr-FR:                   12
//
//       100:
//          en-US:                  100
//          fr-FR:                  100
//
//       255:
//          en-US:                  255
//          fr-FR:                  255
' Define an array of numbers to display.
Dim numbers() As Byte = { 12, 100, Byte.MaxValue }
' Define the culture names used to display them.
Dim cultureNames() As String = { "en-US", "fr-FR" }

For Each number As Byte In numbers
   Console.WriteLine("{0}:", Convert.ToString(number, _
                             System.Globalization.CultureInfo.InvariantCulture))
   For Each cultureName As String In cultureNames
      Dim culture As New System.Globalization.CultureInfo(cultureName)
      Console.WriteLine("   {0}: {1,20}", _
                        culture.Name, Convert.ToString(number, culture))
   Next
   Console.WriteLine()
Next   
' The example displays the following output:
'       12:
'          en-US:                   12
'          fr-FR:                   12
'       
'       100:
'          en-US:                  100
'          fr-FR:                  100
'       
'       255:
'          en-US:                  255
'          fr-FR:                  255

Hinweise

Diese Implementierung ist identisch mit Byte.ToString.

Gilt für

ToString(Boolean)

Konvertiert den angegebenen booleschen Wert in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(bool value);
public static string ToString (bool value);
static member ToString : bool -> string
Public Shared Function ToString (value As Boolean) As String

Parameter

value
Boolean

Der zu konvertierende boolesche Wert.

Gibt zurück

String

Eine Zeichenfolgendarstellung von value.

Beispiele

Im folgenden Beispiel wird die Konvertierung einer Boolean in eine String, mithilfe ToStringvon . Außerdem wird veranschaulicht, dass die von der Konvertierung zurückgegebene Zeichenfolge entweder Boolean.TrueString oder Boolean.FalseString.

bool falseFlag = false;
bool trueFlag = true;

Console.WriteLine(Convert.ToString(falseFlag));
Console.WriteLine(Convert.ToString(falseFlag).Equals(Boolean.FalseString));
Console.WriteLine(Convert.ToString(trueFlag));
Console.WriteLine(Convert.ToString(trueFlag).Equals(Boolean.TrueString));
// The example displays the following output:
//       False
//       True
//       True
//       True
let falseFlag = false
let trueFlag = true

printfn $"{Convert.ToString falseFlag}"
printfn $"{Convert.ToString(falseFlag).Equals Boolean.FalseString}"
printfn $"{Convert.ToString trueFlag}"
printfn $"{Convert.ToString(trueFlag).Equals(Boolean.TrueString)}"
// The example displays the following output:
//       False
//       True
//       True
//       True
Dim falseFlag As Boolean = False
Dim trueFlag As Boolean = True

Console.WriteLine(Convert.ToString(falseFlag))
Console.WriteLine(Convert.ToString(falseFlag).Equals(Boolean.FalseString))
Console.WriteLine(Convert.ToString(trueFlag))
Console.WriteLine(Convert.ToString(trueFlag).Equals(Boolean.TrueString))
' The example displays the following output:
'       False
'       True
'       True
'       True
let falseFlag = false
let trueFlag = true

Console.WriteLine (Convert.ToString falseFlag)
Console.WriteLine (Convert.ToString falseFlag=Boolean.FalseString)
Console.WriteLine (Convert.ToString trueFlag)
Console.WriteLine (Convert.ToString trueFlag=Boolean.TrueString)
// The example displays the following output:
//       False
//       True
//       True
//       True

Hinweise

Diese Implementierung ist identisch mit Boolean.ToString. Sie gibt Boolean.TrueString werte true und Boolean.FalseString für false Werte zurück.

Gilt für

ToString(Byte)

Konvertiert den Wert der angegebenen 8-Bit-Ganzzahl ohne Vorzeichen in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(System::Byte value);
public static string ToString (byte value);
static member ToString : byte -> string
Public Shared Function ToString (value As Byte) As String

Parameter

value
Byte

Die zu konvertierende 8-Bit-Ganzzahl ohne Vorzeichen.

Gibt zurück

String

Eine Zeichenfolgendarstellung von value.

Beispiele

Im folgenden Beispiel wird jeder Wert in einem Array in eine Byte Zeichenfolge konvertiert.

using System;

public class Example
{
   public static void Main()
   {
      byte[] values = { Byte.MinValue, 12, 100, 179, Byte.MaxValue } ;

      foreach (var value in values)
         Console.WriteLine("{0,3} ({1}) --> {2}", value,
                           value.GetType().Name,
                           Convert.ToString(value));
   }
}
// The example displays the following output:
//       0 (Byte) --> 0
//      12 (Byte) --> 12
//     100 (Byte) --> 100
//     179 (Byte) --> 179
//     255 (Byte) --> 255
open System

let values = 
   [| Byte.MinValue; 12uy; 100uy; 179uy; Byte.MaxValue |]

for value in values do
   printfn $"{value,3} ({value.GetType().Name}) --> {Convert.ToString value}"
                     
// The example displays the following output:
//       0 (Byte) --> 0
//      12 (Byte) --> 12
//     100 (Byte) --> 100
//     179 (Byte) --> 179
//     255 (Byte) --> 255
Public Module Example
   Public Sub Main()
      Dim values() As Byte = { Byte.MinValue, 12, 100, 179, Byte.MaxValue }

      For Each value In values
         Console.WriteLine("{0,3} ({1}) --> {2}", value, 
                           value.GetType().Name, 
                           Convert.ToString(value))
      Next                           
   End Sub
End Module
' The example displays the following output:
'       0 (Byte) --> 0
'      12 (Byte) --> 12
'     100 (Byte) --> 100
'     179 (Byte) --> 179
'     255 (Byte) --> 255
let values = [ Byte.MinValue; 12uy; 100uy; 179uy; Byte.MaxValue ]
for value in values do
    printfn "% 4i (%s) --> %s" value (value.GetType().Name) (Convert.ToString value)
// The example displays the following output:
//       0 (Byte) --> 0
//      12 (Byte) --> 12
//     100 (Byte) --> 100
//     179 (Byte) --> 179
//     255 (Byte) --> 255

Hinweise

Diese Implementierung ist identisch mit Byte.ToString().

Gilt für

ToString(Char)

Konvertiert den Wert des angegebenen Unicode-Zeichens in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(char value);
public static string ToString (char value);
static member ToString : char -> string
Public Shared Function ToString (value As Char) As String

Parameter

value
Char

Das zu konvertierende Unicode-Zeichen.

Gibt zurück

String

Eine Zeichenfolgendarstellung von value.

Beispiele

Im folgenden Beispiel wird eine Char in ein String.

public:
   void ConvertStringChar( String^ stringVal )
   {
      Char charVal = 'a';
      
      // A String must be one character long to convert to char.
      try
      {
         charVal = System::Convert::ToChar( stringVal );
         System::Console::WriteLine( " {0} as a char is {1}",
            stringVal, charVal );
      }
      catch ( System::FormatException^ ) 
      {
         System::Console::WriteLine(
            "The String is longer than one character." );
      }
      catch ( System::ArgumentNullException^ ) 
      {
         System::Console::WriteLine( "The String is 0." );
      }
      
      // A char to String conversion will always succeed.
      stringVal = System::Convert::ToString( charVal );
      System::Console::WriteLine( "The character as a String is {0}",
         stringVal );
   }
public void ConvertStringChar(string stringVal) {
    char charVal = 'a';

    // A string must be one character long to convert to char.
    try {
        charVal = System.Convert.ToChar(stringVal);
        System.Console.WriteLine("{0} as a char is {1}",
            stringVal, charVal);
    }
    catch (System.FormatException) {
        System.Console.WriteLine(
            "The string is longer than one character.");
    }
    catch (System.ArgumentNullException) {
        System.Console.WriteLine("The string is null.");
    }

    // A char to string conversion will always succeed.
    stringVal = System.Convert.ToString(charVal);
    System.Console.WriteLine("The character as a string is {0}",
            stringVal);
}
let convertStringChar (stringVal: string) =
    let charVal = 'a'

    // A string must be one character long to convert to char.
    try
        let charVal = Convert.ToChar stringVal
        printfn $"{stringVal} as a char is {charVal}"
    with
    | :? FormatException ->
        printfn "The string is longer than one character."
    | :? ArgumentNullException ->
        printfn "The string is null."

    // A char to string conversion will always succeed.
    let stringVal = Convert.ToString charVal
    printfn $"The character as a string is {stringVal}"
Public Sub ConvertStringChar(ByVal stringVal As String)
    Dim charVal As Char = "a"c

    ' A string must be one character long to convert to char.
    Try
        charVal = System.Convert.ToChar(stringVal)
        System.Console.WriteLine("{0} as a char is {1}", _
                                  stringVal, charVal)
    Catch exception As System.FormatException
        System.Console.WriteLine( _
         "The string is longer than one character.")
    Catch exception As System.ArgumentNullException
        System.Console.WriteLine("The string is null.")
    End Try

    ' A char to string conversion will always succeed.
    stringVal = System.Convert.ToString(charVal)
    System.Console.WriteLine("The character as a string is {0}", _
                              stringVal)
End Sub

Hinweise

Diese Implementierung ist identisch mit Char.ToString.

Gilt für

ToString(DateTime)

Konvertiert den Wert der angegebenen DateTime in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(DateTime value);
public static string ToString (DateTime value);
static member ToString : DateTime -> string
Public Shared Function ToString (value As DateTime) As String

Parameter

value
DateTime

Der Datums- und Uhrzeitwert, der konvertiert werden soll.

Gibt zurück

String

Eine Zeichenfolgendarstellung von value.

Beispiele

Im folgenden Beispiel werden jedes Element in ein Array eines DateTime Werts in einen String Wert konvertiert.

DateTime[] dates = { new DateTime(2009, 7, 14),
                     new DateTime(1, 1, 1, 18, 32, 0),
                     new DateTime(2009, 2, 12, 7, 16, 0) };
string result;

foreach (DateTime dateValue in dates)
{
   result = Convert.ToString(dateValue);
   Console.WriteLine("Converted the {0} value {1} to the {2} value {3}.",
                        dateValue.GetType().Name, dateValue,
                        result.GetType().Name, result);
}
// The example displays the following output:
//    Converted the DateTime value 7/14/2009 12:00:00 AM to a String value 7/14/2009 12:00:00 AM.
//    Converted the DateTime value 1/1/0001 06:32:00 PM to a String value 1/1/0001 06:32:00 PM.
//    Converted the DateTime value 2/12/2009 07:16:00 AM to a String value 2/12/2009 07:16:00 AM.
let dates =
    [| DateTime(2009, 7, 14)
       DateTime(1, 1, 1, 18, 32, 0)
       DateTime(2009, 2, 12, 7, 16, 0) |]

for dateValue in dates do
    let result = Convert.ToString dateValue
    printfn $"Converted the {dateValue.GetType().Name} value {dateValue} to the {result.GetType().Name} value {result}."
// The example displays the following output:
//    Converted the DateTime value 7/14/2009 12:00:00 AM to a String value 7/14/2009 12:00:00 AM.
//    Converted the DateTime value 1/1/0001 06:32:00 PM to a String value 1/1/0001 06:32:00 PM.
//    Converted the DateTime value 2/12/2009 07:16:00 AM to a String value 2/12/2009 07:16:00 AM.
Dim dates() As Date = { #07/14/2009#, #6:32PM#, #02/12/2009 7:16AM#}
Dim result As String

For Each dateValue As Date In dates
   result = Convert.ToString(dateValue)
   Console.WriteLine("Converted the {0} value {1} to the {2} value {3}.", _
                        dateValue.GetType().Name, dateValue, _
                        result.GetType().Name, result)
Next
' The example displays the following output:
'    Converted the DateTime value 7/14/2009 12:00:00 AM to a String value 7/14/2009 12:00:00 AM.
'    Converted the DateTime value 1/1/0001 06:32:00 PM to a String value 1/1/0001 06:32:00 PM.
'    Converted the DateTime value 2/12/2009 07:16:00 AM to a String value 2/12/2009 07:16:00 AM.

Hinweise

Diese Implementierung ist identisch mit DateTime.ToString(). Es verwendet die Formatierungskonventionen der aktuellen Kultur und der Formatbezeichner "G", um einen DateTime Wert in seine Zeichenfolgendarstellung zu konvertieren.

Gilt für

ToString(Double)

Konvertiert den Wert der angegebenen Gleitkommazahl mit doppelter Genauigkeit in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(double value);
public static string ToString (double value);
static member ToString : double -> string
Public Shared Function ToString (value As Double) As String

Parameter

value
Double

Die zu konvertierende Gleitkommazahl mit doppelter Genauigkeit.

Gibt zurück

String

Eine Zeichenfolgendarstellung von value.

Beispiele

Im folgenden Beispiel wird eine Double in ein String.

public:
   void ConvertDoubleString( double doubleVal )
   {
      String^ stringVal;
      
      // A conversion from Double to String cannot overflow.
      stringVal = System::Convert::ToString( doubleVal );
      System::Console::WriteLine( " {0} as a String is: {1}",
         doubleVal, stringVal );
      try
      {
         doubleVal = System::Convert::ToDouble( stringVal );
         System::Console::WriteLine( " {0} as a double is: {1}",
         stringVal, doubleVal );
      }
      catch ( System::OverflowException^ ) 
      {
         System::Console::WriteLine( "Conversion from String-to-double overflowed." );
      }
      catch ( System::FormatException^ ) 
      {
         System::Console::WriteLine( "The String was not formatted as a double." );
      }
      catch ( System::ArgumentException^ ) 
      {
         System::Console::WriteLine( "The String pointed to null." );
      }
   }
public void ConvertDoubleString(double doubleVal) {
    
    string	stringVal;

    // A conversion from Double to string cannot overflow.
    stringVal = System.Convert.ToString(doubleVal);
    System.Console.WriteLine("{0} as a string is: {1}",
        doubleVal, stringVal);

    try {
        doubleVal = System.Convert.ToDouble(stringVal);
        System.Console.WriteLine("{0} as a double is: {1}",
            stringVal, doubleVal);
    }
    catch (System.OverflowException) {
        System.Console.WriteLine(
            "Conversion from string-to-double overflowed.");
    }
    catch (System.FormatException) {
        System.Console.WriteLine(
            "The string was not formatted as a double.");
    }
    catch (System.ArgumentException) {
        System.Console.WriteLine(
            "The string pointed to null.");
    }
}
let convertDoubleString (doubleVal: float) =
    // A conversion from Double to string cannot overflow.
    let stringVal = Convert.ToString doubleVal
    printfn $"{doubleVal} as a string is: {stringVal}"

    try
        let doubleVal = Convert.ToDouble stringVal
        printfn $"{stringVal} as a double is: {doubleVal}"
    with
    | :? OverflowException ->
        printfn "Conversion from string-to-double overflowed."
    | :? FormatException ->
        printfn "The string was not formatted as a double."
    | :? ArgumentException ->
        printfn "The string pointed to null."
Public Sub ConvertDoubleString(ByVal doubleVal As Double)

    Dim stringVal As String

    ' A conversion from Double to String cannot overflow.       
    stringVal = System.Convert.ToString(doubleVal)
    System.Console.WriteLine("{0} as a String is: {1}", _
                              doubleVal, stringVal)

    Try
        doubleVal = System.Convert.ToDouble(stringVal)
        System.Console.WriteLine("{0} as a Double is: {1}", _
                                  stringVal, doubleVal)
    Catch exception As System.OverflowException
        System.Console.WriteLine( _
            "Overflow in String-to-Double conversion.")
    Catch exception As System.FormatException
        System.Console.WriteLine( _
            "The string is not formatted as a Double.")
    Catch exception As System.ArgumentException
        System.Console.WriteLine("The string is null.")
    End Try

End Sub

Hinweise

Diese Implementierung ist identisch mit Double.ToString().

Gilt für

ToString(Int16)

Konvertiert den Wert der angegebenen 16-Bit-Ganzzahl mit Vorzeichen in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(short value);
public static string ToString (short value);
static member ToString : int16 -> string
Public Shared Function ToString (value As Short) As String

Parameter

value
Int16

Die zu konvertierende 16-Bit-Ganzzahl mit Vorzeichen.

Gibt zurück

String

Eine Zeichenfolgendarstellung von value.

Beispiele

Im folgenden Beispiel werden jedes Element in einem Array von 16-Bit-Ganzzahlen in die entsprechende Zeichenfolgendarstellung konvertiert.

short[] numbers = { Int16.MinValue, -138, 0, 19, Int16.MaxValue };
string result;

foreach (short number in numbers)
{
   result = Convert.ToString(number);
   Console.WriteLine("Converted the {0} value {1} to the {2} value {3}.",
                        number.GetType().Name, number,
                        result.GetType().Name, result);
}
// The example displays the following output:
//    Converted the Int16 value -32768 to the String value -32768.
//    Converted the Int16 value -138 to the String value -138.
//    Converted the Int16 value 0 to the String value 0.
//    Converted the Int16 value 19 to the String value 19.
//    Converted the Int16 value 32767 to the String value 32767.
let numbers = [| Int16.MinValue; -138s; 0s; 19s; Int16.MaxValue |]

for number in numbers do
    let result = Convert.ToString number
    printfn $"Converted the {number.GetType().Name} value {number} to the {result.GetType().Name} value {result}."
// The example displays the following output:
//    Converted the Int16 value -32768 to the String value -32768.
//    Converted the Int16 value -138 to the String value -138.
//    Converted the Int16 value 0 to the String value 0.
//    Converted the Int16 value 19 to the String value 19.
//    Converted the Int16 value 32767 to the String value 32767.
Dim numbers() As Short = { Int16.MinValue, -138, 0, 19, Int16.MaxValue }
Dim result As String

For Each number As Short In numbers
   result = Convert.ToString(number)
   Console.WriteLine("Converted the {0} value {1} to the {2} value {3}.", _
                        number.GetType().Name, number, _
                        result.GetType().Name, result)
Next     
' The example displays the following output:
'    Converted the Int16 value -32768 to the String value -32768.
'    Converted the Int16 value -138 to the String value -138.
'    Converted the Int16 value 0 to the String value 0.
'    Converted the Int16 value 19 to the String value 19.
'    Converted the Int16 value 32767 to the String value 32767.

Hinweise

Diese Implementierung ist identisch mit Int16.ToString().

Gilt für

ToString(Int32)

Konvertiert den Wert der angegebenen 32-Bit-Ganzzahl mit Vorzeichen in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(int value);
public static string ToString (int value);
static member ToString : int -> string
Public Shared Function ToString (value As Integer) As String

Parameter

value
Int32

Die zu konvertierende 32-Bit-Ganzzahl mit Vorzeichen.

Gibt zurück

String

Eine Zeichenfolgendarstellung von value.

Beispiele

Im folgenden Beispiel wird die ToString(Int32) Methode mit der ToString(UInt16, IFormatProvider) Methode verglichen. Es definiert ein benutzerdefiniertes NumberFormatInfo Objekt, das das Sting "Minus" verwendet, um das negative Zeichen darzustellen. Es konvertiert jedes Element in einem ganzzahligen Array in seine gleichwertige Zeichenfolgendarstellung mithilfe der Standardformatierung (die Formatierungskonventionen der aktuellen Kultur) und den benutzerdefinierten Formatanbieter.

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      // Create a NumberFormatInfo object and set its NegativeSigns
      // property to use for integer formatting.
      NumberFormatInfo provider = new NumberFormatInfo();
      provider.NegativeSign = "minus ";

      int[] values = { -20, 0, 100 };

      Console.WriteLine("{0,-8} --> {1,10} {2,10}\n", "Value",
                         CultureInfo.CurrentCulture.Name,
                         "Custom");
      foreach (int value in values)
         Console.WriteLine("{0,-8} --> {1,10} {2,10}",
                           value, Convert.ToString(value),
                           Convert.ToString(value, provider));
      // The example displays output like the following:
      //       Value    -->      en-US     Custom
      //
      //       -20      -->        -20   minus 20
      //       0        -->          0          0
      //       100      -->        100        100
   }
}
open System
open System.Globalization

// Create a NumberFormatInfo object and set its NegativeSigns
// property to use for integer formatting.
let provider = NumberFormatInfo()
provider.NegativeSign <- "minus "

let values = [| -20; 0; 100 |]

printfn $"""{CultureInfo.CurrentCulture.Name,-8} --> {"Value",10} {"Custom",10}\n"""
                    
for value in values do
    printfn $"{value,-8} --> {Convert.ToString value,10} {Convert.ToString(value, provider),10}"
// The example displays output like the following:
//       Value    -->      en-US     Custom
//
//       -20      -->        -20   minus 20
//       0        -->          0          0
//       100      -->        100        100
Imports System.Globalization

Module Example
   Public Sub Main()
      ' Create a NumberFormatInfo object and set its NegativeSigns
      ' property to use for integer formatting.
      Dim provider As New NumberFormatInfo()
      provider.NegativeSign = "minus "

      Dim values() As Integer = { -20, 0, 100 }

      Console.WriteLine("{0,-8} --> {1,10} {2,10}", "Value",
                         CultureInfo.CurrentCulture.Name,
                         "Custom")
      Console.WriteLine()
      For Each value As Integer In values
         Console.WriteLine("{0,-8} --> {1,10} {2,10}",
                           value, Convert.ToString(value),
                           Convert.ToString(value, provider))
      Next
   End Sub
End Module
' The example displays output like the following:
'       Value    -->      en-US     Custom
'
'       -20      -->        -20   minus 20
'       0        -->          0          0
'       100      -->        100        100

Hinweise

Diese Implementierung ist identisch mit Int32.ToString(). Es formatiert value mithilfe der Formatierungskonventionen der aktuellen Kultur.

Gilt für

ToString(Decimal)

Konvertiert den Wert der angegebenen Dezimalzahl in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(System::Decimal value);
public static string ToString (decimal value);
static member ToString : decimal -> string
Public Shared Function ToString (value As Decimal) As String

Parameter

value
Decimal

Die zu konvertierende Dezimalzahl.

Gibt zurück

String

Eine Zeichenfolgendarstellung von value.

Beispiele

Im folgenden Beispiel wird eine Decimal in ein String.

public:
   void ConvertStringDecimal( String^ stringVal )
   {
      Decimal decimalVal = 0;

      try
      {
         decimalVal = System::Convert::ToDecimal( stringVal );
         System::Console::WriteLine( "The String as a decimal is {0}.",
         decimalVal );
      }
      catch ( System::OverflowException^ ) 
      {
         System::Console::WriteLine(
            "The conversion from String to decimal overflowed." );
      }
      catch ( System::FormatException^ ) 
      {
         System::Console::WriteLine(
            "The String is not formatted as a decimal." );
      }
      catch ( System::ArgumentNullException^ ) 
      {
         System::Console::WriteLine( "The String is 0." );
      }
      
      // Decimal to String conversion will not overflow.
      stringVal = System::Convert::ToString( decimalVal );
      System::Console::WriteLine(
         "The decimal as a String is {0}.", stringVal );
   }
public void ConvertStringDecimal(string stringVal) {
    decimal decimalVal = 0;
    
    try {
        decimalVal = System.Convert.ToDecimal(stringVal);
        System.Console.WriteLine(
            "The string as a decimal is {0}.", decimalVal);
    }
    catch (System.OverflowException){
        System.Console.WriteLine(
            "The conversion from string to decimal overflowed.");
    }
    catch (System.FormatException) {
        System.Console.WriteLine(
            "The string is not formatted as a decimal.");
    }
    catch (System.ArgumentNullException) {
        System.Console.WriteLine(
            "The string is null.");
    }

    // Decimal to string conversion will not overflow.
    stringVal = System.Convert.ToString(decimalVal);
    System.Console.WriteLine(
        "The decimal as a string is {0}.", stringVal);
}
let convertStringDecimal (stringVal: string) =
    let decimalVal = 0m

    try
        let decimalVal = Convert.ToDecimal(stringVal)
        printfn $"The string as a decimal is {decimalVal}."
    with
    | :? OverflowException ->
        printfn "The conversion from string to decimal overflowed."
    | :? FormatException ->
        printfn "The string is not formatted as a decimal."
    | :? ArgumentNullException ->
        printfn "The string is null."

    // Decimal to string conversion will not overflow.
    let stringVal = Convert.ToString decimalVal
    printfn $"The decimal as a string is {stringVal}."
Public Sub ConvertStringDecimal(ByVal stringVal As String)
    Dim decimalVal As Decimal = 0

    Try
        decimalVal = System.Convert.ToDecimal(stringVal)
        System.Console.WriteLine("The string as a decimal is {0}.", _
                                  decimalVal)
    Catch exception As System.OverflowException
        System.Console.WriteLine( _
            "Overflow in string-to-decimal conversion.")
    Catch exception As System.FormatException
        System.Console.WriteLine( _
            "The string is not formatted as a decimal.")
    Catch exception As System.ArgumentException
        System.Console.WriteLine("The string is null.")
    End Try

    ' Decimal to string conversion will not overflow.
    stringVal = System.Convert.ToString(decimalVal)
    System.Console.WriteLine("The decimal as a string is {0}.", _
                              stringVal)
End Sub

Hinweise

Diese Implementierung ist identisch mit Decimal.ToString().

Gilt für

ToString(Object)

Konvertiert den Wert des angegebenen Objekts in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(System::Object ^ value);
public static string ToString (object value);
public static string? ToString (object? value);
static member ToString : obj -> string
Public Shared Function ToString (value As Object) As String

Parameter

value
Object

Ein Objekt, das den zu konvertierenden Wert angibt, oder null.

Gibt zurück

String

Die Zeichenfolgendarstellung von value, oder Empty, wenn valuenull ist.

Beispiele

Im folgenden Beispiel werden jedes Element in einem Objektarray in die entsprechende Zeichenfolgendarstellung konvertiert.

object[] values = { false, 12.63m, new DateTime(2009, 6, 1, 6, 32, 15), 16.09e-12,
                    'Z', 15.15322, SByte.MinValue, Int32.MaxValue };
string result;

foreach (object value in values)
{
   result = Convert.ToString(value);
   Console.WriteLine("Converted the {0} value {1} to the {2} value {3}.",
                        value.GetType().Name, value,
                        result.GetType().Name, result);
}
// The example displays the following output:
//    Converted the Boolean value False to the String value False.
//    Converted the Decimal value 12.63 to the String value 12.63.
//    Converted the DateTime value 6/1/2009 06:32:15 AM to the String value 6/1/2009 06:32:15 AM.
//    Converted the Double value 1.609E-11 to the String value 1.609E-11.
//    Converted the Char value Z to the String value Z.
//    Converted the Double value 15.15322 to the String value 15.15322.
//    Converted the SByte value -128 to the String value -128.
//    Converted the Int32 value 2147483647 to the String value 2147483647.
let values: obj[] =
    [| false; 12.63m; DateTime(2009, 6, 1, 6, 32, 15)
       16.09e-12; 'Z'; 15.15322; SByte.MinValue; Int32.MaxValue |]

for value in values do
    let result = Convert.ToString value
    printfn $"Converted the {value.GetType().Name} value {value} to the {result.GetType().Name} value {result}."
// The example displays the following output:
//    Converted the Boolean value False to the String value False.
//    Converted the Decimal value 12.63 to the String value 12.63.
//    Converted the DateTime value 6/1/2009 06:32:15 AM to the String value 6/1/2009 06:32:15 AM.
//    Converted the Double value 1.609E-11 to the String value 1.609E-11.
//    Converted the Char value Z to the String value Z.
//    Converted the Double value 15.15322 to the String value 15.15322.
//    Converted the SByte value -128 to the String value -128.
//    Converted the Int32 value 2147483647 to the String value 2147483647.
Dim values() As Object = { False, 12.63d, #06/01/2009 6:32:15#, 16.09e-12, _
                           "Z"c, 15.15322, SByte.MinValue, Int32.MaxValue}
Dim result As String

For Each value As Object In values
   result = Convert.ToString(value)
   Console.WriteLine("Converted the {0} value {1} to the {2} value {3}.", _
                        value.GetType().Name, value, _
                        result.GetType().Name, result)
Next
' The example displays the following output:
'    Converted the Boolean value False to the String value False.
'    Converted the Decimal value 12.63 to the String value 12.63.
'    Converted the DateTime value 6/1/2009 06:32:15 AM to the String value 6/1/2009 06:32:15 AM.
'    Converted the Double value 1.609E-11 to the String value 1.609E-11.
'    Converted the Char value Z to the String value Z.
'    Converted the Double value 15.15322 to the String value 15.15322.
'    Converted the SByte value -128 to the String value -128.
'    Converted the Int32 value 2147483647 to the String value 2147483647.

Hinweise

Um in die Zeichenfolgendarstellung zu konvertieren value , versucht die Methode, die IConvertible.ToString Implementierung von value. Wenn value die IConvertible Schnittstelle nicht implementiert wird, versucht die Methode, die IFormattable.ToString Implementierung von value. Wenn der Wert die IFormattable Schnittstelle nicht implementiert, ruft die Methode die ToString Methode des zugrunde liegenden Typs von value.

Gilt für

ToString(SByte)

Wichtig

Diese API ist nicht CLS-kompatibel.

Konvertiert den Wert der angegebenen 8-Bit-Ganzzahl mit Vorzeichen in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(System::SByte value);
[System.CLSCompliant(false)]
public static string ToString (sbyte value);
[<System.CLSCompliant(false)>]
static member ToString : sbyte -> string
Public Shared Function ToString (value As SByte) As String

Parameter

value
SByte

Die zu konvertierende 8-Bit-Ganzzahl mit Vorzeichen.

Gibt zurück

String

Eine Zeichenfolgendarstellung von value.

Attribute

Beispiele

Im folgenden Beispiel wird jedes Element in ein signiertes Bytearray in die entsprechende Zeichenfolgendarstellung konvertiert.

sbyte[] numbers = { SByte.MinValue, -12, 0, 16, SByte.MaxValue };
string result;

foreach (sbyte number in numbers)
{
   result = Convert.ToString(number);
   Console.WriteLine("Converted the {0} value {1} to the {2} value {3}.",
                        number.GetType().Name, number,
                        result.GetType().Name, result);
}
// The example displays the following output:
//    Converted the SByte value -128 to the String value -128.
//    Converted the SByte value -12 to the String value -12.
//    Converted the SByte value 0 to the String value 0.
//    Converted the SByte value 16 to the String value 16.
//    Converted the SByte value 127 to the String value 127.
let numbers = [| SByte.MinValue; -12y; 0y; 16y; SByte.MaxValue |]

for number in numbers do
    let result = Convert.ToString number
    printfn $"Converted the {number.GetType().Name} value {number} to the {result.GetType().Name} value {result}."
// The example displays the following output:
//    Converted the SByte value -128 to the String value -128.
//    Converted the SByte value -12 to the String value -12.
//    Converted the SByte value 0 to the String value 0.
//    Converted the SByte value 16 to the String value 16.
//    Converted the SByte value 127 to the String value 127.
Dim numbers() As SByte = { SByte.MinValue, -12, 0, 16, SByte.MaxValue }
Dim result As String

For Each number As SByte In numbers
   result = Convert.ToString(number)
   Console.WriteLine("Converted the {0} value {1} to the {2} value {3}.", _
                        number.GetType().Name, number, _
                        result.GetType().Name, result)
Next
' The example displays the following output:
'    Converted the SByte value -128 to the String value -128.
'    Converted the SByte value -12 to the String value -12.
'    Converted the SByte value 0 to the String value 0.
'    Converted the SByte value 16 to the String value 16.
'    Converted the SByte value 127 to the String value 127.

Hinweise

Diese Implementierung ist identisch mit SByte.ToString().

Gilt für

ToString(Single)

Konvertiert den Wert der angegebenen Gleitkommazahl mit einfacher Genauigkeit in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(float value);
public static string ToString (float value);
static member ToString : single -> string
Public Shared Function ToString (value As Single) As String

Parameter

value
Single

Die zu konvertierende Gleitkommazahl mit einfacher Genauigkeit.

Gibt zurück

String

Eine Zeichenfolgendarstellung von value.

Beispiele

Im folgenden Beispiel wird jedes Element in einem Array von Single Werten in die entsprechende Zeichenfolgendarstellung konvertiert.

float[] numbers = { Single.MinValue, -1011.351f, -17.45f, -3e-16f,
                    0f, 4.56e-12f, 16.0001f, 10345.1221f, Single.MaxValue };
string result;

foreach (float number in numbers)
{
   result = Convert.ToString(number);
   Console.WriteLine("Converted the {0} value {1} to the {2} value {3}.",
                        number.GetType().Name, number,
                        result.GetType().Name, result);
}
// The example displays the following output:
//    Converted the Single value -3.402823E+38 to the String value -3.402823E+38.
//    Converted the Single value -1011.351 to the String value -1011.351.
//    Converted the Single value -17.45 to the String value -17.45.
//    Converted the Single value -3E-16 to the String value -3E-16.
//    Converted the Single value 0 to the String value 0.
//    Converted the Single value 4.56E-12 to the String value 4.56E-12.
//    Converted the Single value 16.0001 to the String value 16.0001.
//    Converted the Single value 10345.12 to the String value 10345.12.
//    Converted the Single value 3.402823E+38 to the String value 3.402823E+38.
let numbers = 
    [| Single.MinValue; -1011.351f; -17.45f; -3e-16f; 0f; 4.56e-12f; 16.0001f; 10345.1221f; Single.MaxValue |]

for number in numbers do
    let result = Convert.ToString number
    printfn $"Converted the {number.GetType().Name} value {number} to the {result.GetType().Name} value {result}."
// The example displays the following output:
//    Converted the Single value -3.402823E+38 to the String value -3.402823E+38.
//    Converted the Single value -1011.351 to the String value -1011.351.
//    Converted the Single value -17.45 to the String value -17.45.
//    Converted the Single value -3E-16 to the String value -3E-16.
//    Converted the Single value 0 to the String value 0.
//    Converted the Single value 4.56E-12 to the String value 4.56E-12.
//    Converted the Single value 16.0001 to the String value 16.0001.
//    Converted the Single value 10345.12 to the String value 10345.12.
//    Converted the Single value 3.402823E+38 to the String value 3.402823E+38.
Dim numbers() As Single = { Single.MinValue, -1011.351, -17.45, -3e-16, _
                            0, 4.56e-12, 16.0001, 10345.1221, Single.MaxValue }
Dim result As String

For Each number As Single In numbers
   result = Convert.ToString(number)
   Console.WriteLine("Converted the {0} value {1} to the {2} value {3}.", _
                        number.GetType().Name, number, _
                        result.GetType().Name, result)
Next                            
' The example displays the following output:
'    Converted the Single value -3.402823E+38 to the String value -3.402823E+38.
'    Converted the Single value -1011.351 to the String value -1011.351.
'    Converted the Single value -17.45 to the String value -17.45.
'    Converted the Single value -3E-16 to the String value -3E-16.
'    Converted the Single value 0 to the String value 0.
'    Converted the Single value 4.56E-12 to the String value 4.56E-12.
'    Converted the Single value 16.0001 to the String value 16.0001.
'    Converted the Single value 10345.12 to the String value 10345.12.
'    Converted the Single value 3.402823E+38 to the String value 3.402823E+38.

Hinweise

Diese Implementierung ist identisch mit Single.ToString().

Gilt für

ToString(String)

Gibt die angegebene Zeichenfolgeninstanz zurück. Es wird keine wirkliche Konvertierung durchgeführt.

public:
 static System::String ^ ToString(System::String ^ value);
public static string? ToString (string? value);
public static string ToString (string value);
static member ToString : string -> string
Public Shared Function ToString (value As String) As String

Parameter

value
String

Die zurückzugebende Zeichenfolge.

Gibt zurück

String

value wird unverändert zurückgegeben.

Beispiele

Im folgenden Beispiel wird eine Zeichenfolge an die ToString(String) Methode übergeben und die Methode aufgerufen, um zu bestätigen, dass die Object.ReferenceEquals Methode die ursprüngliche Zeichenfolge zurückgibt. Im Beispiel wird auch die String.IsInterned Methode aufgerufen, um sicherzustellen, dass die beiden Zeichenfolgen nicht identisch sind, da die ursprüngliche Zeichenfolge interniert ist.

using System;

public class Example
{
   public static void Main()
   {
      String article = "An";
      String noun = "apple";
      String str1 = String.Format("{0} {1}", article, noun);
      String str2 = Convert.ToString(str1);

      Console.WriteLine("str1 is interned: {0}",
                        ! (String.IsInterned(str1) == null));
      Console.WriteLine("str1 and str2 are the same reference: {0}",
                        Object.ReferenceEquals(str1, str2));
   }
}
// The example displays the following output:
//       str1 is interned: False
//       str1 and str2 are the same reference: True
open System

let article = "An"
let noun = "apple"
let str1 = $"{article} {noun}"
let str2 = Convert.ToString str1

printfn $"str1 is interned: {String.IsInterned str1 <> null}"
                  
printfn $"str1 and str2 are the same reference: {Object.ReferenceEquals(str1, str2)}"
// The example displays the following output:
//       str1 is interned: False
//       str1 and str2 are the same reference: True
Module Example
   Public Sub Main()
      Dim article As String = "An"
      Dim noun As String = "apple"
      Dim str1 As String = String.Format("{0} {1}", article, noun)
      Dim str2 As String = Convert.ToString(str1)

      Console.WriteLine("str1 is interned: {0}",
                        Not String.IsInterned(str1) Is Nothing)
      Console.WriteLine("str1 and str2 are the same reference: {0}",
                        Object.ReferenceEquals(str1, str2))
   End Sub
End Module
' The example displays the following output:
'       str1 is interned: False
'       str1 and str2 are the same reference: True

Gilt für

ToString(UInt16)

Wichtig

Diese API ist nicht CLS-kompatibel.

Konvertiert den Wert der angegebenen 16-Bit-Ganzzahl ohne Vorzeichen in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(System::UInt16 value);
[System.CLSCompliant(false)]
public static string ToString (ushort value);
[<System.CLSCompliant(false)>]
static member ToString : uint16 -> string
Public Shared Function ToString (value As UShort) As String

Parameter

value
UInt16

Die zu konvertierende 16-Bit-Ganzzahl ohne Vorzeichen.

Gibt zurück

String

Eine Zeichenfolgendarstellung von value.

Attribute

Beispiele

Im folgenden Beispiel wird jedes Element in ein Array mit nicht signierten 16-Bit-Ganzzahlwerten in die entsprechende Zeichenfolgendarstellung konvertiert.

ushort[] numbers = { UInt16.MinValue, 103, 1045, UInt16.MaxValue };
string result;

foreach (ushort number in numbers)
{
   result = Convert.ToString(number);
   Console.WriteLine("Converted the {0} value {1} to the {2} value {3}.",
                        number.GetType().Name, number,
                        result.GetType().Name, result);
}
// The example displays the following output:
//    Converted the UInt16 value 0 to the String value 0.
//    Converted the UInt16 value 103 to the String value 103.
//    Converted the UInt16 value 1045 to the String value 1045.
//    Converted the UInt16 value 65535 to the String value 65535.
let numbers = [| UInt16.MinValue; 103us; 1045us; UInt16.MaxValue |]

for number in numbers do
    let result = Convert.ToString number
    printfn $"Converted the {number.GetType().Name} value {number} to the {result.GetType().Name} value {result}."
// The example displays the following output:
//    Converted the UInt16 value 0 to the String value 0.
//    Converted the UInt16 value 103 to the String value 103.
//    Converted the UInt16 value 1045 to the String value 1045.
//    Converted the UInt16 value 65535 to the String value 65535.
Dim numbers() As UShort = { UInt16.MinValue, 103, 1045, UInt16.MaxValue }
Dim result As String

For Each number As UShort In numbers
   result = Convert.ToString(number)
   Console.WriteLine("Converted the {0} value {1} to the {2} value {3}.", _
                        number.GetType().Name, number, _
                        result.GetType().Name, result)
Next
' The example displays the following output:
'    Converted the UInt16 value 0 to the String value 0.
'    Converted the UInt16 value 103 to the String value 103.
'    Converted the UInt16 value 1045 to the String value 1045.
'    Converted the UInt16 value 65535 to the String value 65535.

Hinweise

Diese Implementierung ist identisch mit UInt16.ToString().

Gilt für

ToString(Byte, Int32)

Konvertiert den Wert einer 8-Bit-Ganzzahl ohne Vorzeichen in die entsprechende Zeichenfolgendarstellung in einer angegebenen Basis.

public:
 static System::String ^ ToString(System::Byte value, int toBase);
public static string ToString (byte value, int toBase);
static member ToString : byte * int -> string
Public Shared Function ToString (value As Byte, toBase As Integer) As String

Parameter

value
Byte

Die zu konvertierende 8-Bit-Ganzzahl ohne Vorzeichen.

toBase
Int32

Die Basis des Rückgabewerts, die 2, 8, 10 oder 16 sein muss.

Gibt zurück

String

Die Zeichenfolgendarstellung von value zur Basis toBase.

Ausnahmen

toBase ist nicht 2, 8, 10 oder 16.

Beispiele

Im folgenden Beispiel wird jedes Element in einem Bytearray in seine äquivalente binäre, hexadezimale, dezimale und hexadezimale Zeichenfolgendarstellung konvertiert.

int[] bases = { 2, 8, 10, 16};
byte[] numbers = { Byte.MinValue, 12, 103, Byte.MaxValue};

foreach (int baseValue in bases)
{
   Console.WriteLine("Base {0} conversion:", baseValue);
   foreach (byte number in numbers)
   {
      Console.WriteLine("   {0,-5}  -->  0x{1}",
                        number, Convert.ToString(number, baseValue));
   }
}
// The example displays the following output:
//       Base 2 conversion:
//          0      -->  0x0
//          12     -->  0x1100
//          103    -->  0x1100111
//          255    -->  0x11111111
//       Base 8 conversion:
//          0      -->  0x0
//          12     -->  0x14
//          103    -->  0x147
//          255    -->  0x377
//       Base 10 conversion:
//          0      -->  0x0
//          12     -->  0x12
//          103    -->  0x103
//          255    -->  0x255
//       Base 16 conversion:
//          0      -->  0x0
//          12     -->  0xc
//          103    -->  0x67
//          255    -->  0xff
let bases = [| 2; 8; 10; 16 |]
let numbers = [| Byte.MinValue; 12uy; 103uy; Byte.MaxValue |]

for baseValue in bases do
    printfn $"Base {baseValue} conversion:"
    for number in numbers do
        Console.WriteLine("   {0,-5}  -->  0x{1}",
                        number, Convert.ToString(number, baseValue))
// The example displays the following output:
//       Base 2 conversion:
//          0      -->  0x0
//          12     -->  0x1100
//          103    -->  0x1100111
//          255    -->  0x11111111
//       Base 8 conversion:
//          0      -->  0x0
//          12     -->  0x14
//          103    -->  0x147
//          255    -->  0x377
//       Base 10 conversion:
//          0      -->  0x0
//          12     -->  0x12
//          103    -->  0x103
//          255    -->  0x255
//       Base 16 conversion:
//          0      -->  0x0
//          12     -->  0xc
//          103    -->  0x67
//          255    -->  0xff
Dim bases() As Integer = { 2, 8, 10, 16}
Dim numbers() As Byte = { Byte.MinValue, 12, 103, Byte.MaxValue}

For Each base As Integer In bases
   Console.WriteLine("Base {0} conversion:", base)
   For Each number As Byte In numbers
      Console.WriteLine("   {0,-5}  -->  0x{1}", _
                        number, Convert.ToString(number, base))
   Next
Next
' The example displays the following output:
'       Base 2 conversion:
'          0      -->  0x0
'          12     -->  0x1100
'          103    -->  0x1100111
'          255    -->  0x11111111
'       Base 8 conversion:
'          0      -->  0x0
'          12     -->  0x14
'          103    -->  0x147
'          255    -->  0x377
'       Base 10 conversion:
'          0      -->  0x0
'          12     -->  0x12
'          103    -->  0x103
'          255    -->  0x255
'       Base 16 conversion:
'          0      -->  0x0
'          12     -->  0xc
'          103    -->  0x67
'          255    -->  0xff
let bases = [2; 8; 10; 16]
let numbers = [ Byte.MinValue; 12uy; 103uy; Byte.MaxValue ]

for baseValue in bases do
    printfn "Base %i conversion:" baseValue
    for number in numbers do
        printfn "   % -5i  -->  0x%s" number (Convert.ToString (number, baseValue))
// The example displays the following output:
//     Base 2 conversion:
//         0     -->  0x0
//         12    -->  0x1100
//         103   -->  0x1100111
//         255   -->  0x11111111
//     Base 8 conversion:
//         0     -->  0x0
//         12    -->  0x14
//         103   -->  0x147
//         255   -->  0x377
//     Base 10 conversion:
//         0     -->  0x0
//         12    -->  0x12
//         103   -->  0x103
//         255   -->  0x255
//     Base 16 conversion:
//         0     -->  0x0
//         12    -->  0xc
//         103   -->  0x67
//         255   -->  0xff

Hinweise

Wenn toBase nicht gleich 10, stellt value die Zeichenfolge, die von der Convert.ToString(Byte, Int32) Methode zurückgegeben wird, nur die Größe dar. Wenn die Methode aufgerufen wird, um eine Zeichenfolge zu erstellen, die später wieder in eine Zahl konvertiert wird, sollte eine entsprechende Methode, die davon ausgeht, dass eine nur numerische Darstellung aufgerufen wird, um die Konvertierung auszuführen. Solche Methoden umfassen Convert.ToByte(String, Int32) oder Byte.Parse(String, NumberStyles).

Gilt für

ToString(Boolean, IFormatProvider)

Konvertiert den angegebenen booleschen Wert in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(bool value, IFormatProvider ^ provider);
public static string ToString (bool value, IFormatProvider provider);
public static string ToString (bool value, IFormatProvider? provider);
static member ToString : bool * IFormatProvider -> string
Public Shared Function ToString (value As Boolean, provider As IFormatProvider) As String

Parameter

value
Boolean

Der zu konvertierende boolesche Wert.

provider
IFormatProvider

Eine Instanz eines Objekts. Konvertiert die Zeichenfolgendarstellung einer Zahl in einem angegebenen Stil und einem kulturspezifischen Format in die entsprechende 32-Bit-Ganzzahl mit Vorzeichen.

Gibt zurück

String

Eine Zeichenfolgendarstellung von value.

Beispiele

Im folgenden Beispiel wird ein Wert in String eine IFormatProvider mit der Methode konvertiert, indem ein Boolean Objekt verwendet wird, das den Typ des Formatanbieters anzeigt, für den ToString er aufgerufen wird. Das Beispiel zeigt, dass das IFormatProvider Objekt nicht darauf verwiesen wird.

// Example of Convert::ToString( non-numeric types, IFormatProvider ).
using namespace System;
using namespace System::Globalization;

#define null (Object^)0

// An instance of this class can be passed to methods that require 
// an IFormatProvider.
ref class DummyProvider: public IFormatProvider
{
public:

   // Normally, GetFormat returns an object of the requested type
   // (usually itself) if it is able; otherwise, it returns Nothing. 
   virtual Object^ GetFormat( Type^ argType )
   {
      // Here, the type of argType is displayed, and GetFormat
      // always returns Nothing.
      Console::Write( "{0,-40}", argType->ToString() );
      return null;
   }
};

int main()
{
   // Create an instance of the IFormatProvider.
   DummyProvider^ provider = gcnew DummyProvider;
   String^ converted;

   // Convert these values using DummyProvider.
   int Int32A = -252645135;
   double DoubleA = 61680.3855;
   Object^ ObjDouble =  -98765.4321;
   DateTime DayTimeA = DateTime(2001,9,11,13,45,0);
   bool BoolA = true;
   String^ StringA = "Qwerty";
   Char CharA = '$';
   TimeSpan TSpanA = TimeSpan(0,18,0);
   Object^ ObjOther = static_cast<Object^>(provider);
   Console::WriteLine( "This example of "
   "Convert::ToString( non-numeric, IFormatProvider* ) \n"
   "generates the following output. The provider type, "
   "argument type, \nand argument value are displayed." );
   Console::WriteLine( "\nNote: The IFormatProvider object is "
   "not called for Boolean, String, \nChar, TimeSpan, "
   "and non-numeric Object." );

   // The format provider is called for these conversions.
   Console::WriteLine();
   converted = Convert::ToString( Int32A, provider );
   Console::WriteLine( "int      {0}", converted );
   converted = Convert::ToString( DoubleA, provider );
   Console::WriteLine( "double   {0}", converted );
   converted = Convert::ToString( ObjDouble, provider );
   Console::WriteLine( "Object   {0}", converted );
   converted = Convert::ToString( DayTimeA, provider );
   Console::WriteLine( "DateTime {0}", converted );

   // The format provider is not called for these conversions.
   Console::WriteLine();
   converted = Convert::ToString( BoolA, provider );
   Console::WriteLine( "bool     {0}", converted );
   converted = Convert::ToString( StringA, provider );
   Console::WriteLine( "String   {0}", converted );
   converted = Convert::ToString( CharA, provider );
   Console::WriteLine( "Char     {0}", converted );
   converted = Convert::ToString( TSpanA, provider );
   Console::WriteLine( "TimeSpan {0}", converted );
   converted = Convert::ToString( ObjOther, provider );
   Console::WriteLine( "Object   {0}", converted );
}

/*
This example of Convert::ToString( non-numeric, IFormatProvider* )
generates the following output. The provider type, argument type,
and argument value are displayed.

Note: The IFormatProvider object is not called for Boolean, String,
Char, TimeSpan, and non-numeric Object.

System.Globalization.NumberFormatInfo   int      -252645135
System.Globalization.NumberFormatInfo   double   61680.3855
System.Globalization.NumberFormatInfo   Object   -98765.4321
System.Globalization.DateTimeFormatInfo DateTime 9/11/2001 1:45:00 PM

bool     True
String   Qwerty
Char     $
TimeSpan 00:18:00
Object   DummyProvider
*/
// Example of Convert.ToString( non-numeric types, IFormatProvider ).
using System;
using System.Globalization;

// An instance of this class can be passed to methods that require
// an IFormatProvider.
public class DummyProvider : IFormatProvider
{
    // Normally, GetFormat returns an object of the requested type
    // (usually itself) if it is able; otherwise, it returns Nothing.
    public object GetFormat( Type argType )
    {
        // Here, the type of argType is displayed, and GetFormat
        // always returns Nothing.
        Console.Write( "{0,-40}", argType.ToString( ) );
        return null;
    }
}

class ConvertNonNumericProviderDemo
{
    static void Main( )
    {
        // Create an instance of the IFormatProvider.
        DummyProvider provider = new DummyProvider( );
        string converted;

        // Convert these values using DummyProvider.
        int      Int32A     = -252645135;
        double   DoubleA    = 61680.3855;
        object   ObjDouble  = (object)( -98765.4321 );
        DateTime DayTimeA   = new DateTime( 2001, 9, 11, 13, 45, 0 );

        bool     BoolA      = true;
        string   StringA    = "Qwerty";
        char     CharA      = '$';
        TimeSpan TSpanA     = new TimeSpan( 0, 18, 0 );
        object   ObjOther   = (object)provider;

        Console.WriteLine( "This example of " +
            "Convert.ToString( non-numeric, IFormatProvider ) \n" +
            "generates the following output. The provider type, " +
            "argument type, \nand argument value are displayed." );
        Console.WriteLine( "\nNote: The IFormatProvider object is " +
            "not called for Boolean, String, \nChar, TimeSpan, " +
            "and non-numeric Object." );

        // The format provider is called for these conversions.
        Console.WriteLine( );
        converted = Convert.ToString( Int32A, provider );
        Console.WriteLine( "int      {0}", converted );
        converted = Convert.ToString( DoubleA, provider );
        Console.WriteLine( "double   {0}", converted );
        converted = Convert.ToString( ObjDouble, provider );
        Console.WriteLine( "object   {0}", converted );
        converted = Convert.ToString( DayTimeA, provider );
        Console.WriteLine( "DateTime {0}", converted );

        // The format provider is not called for these conversions.
        Console.WriteLine( );
        converted = Convert.ToString( BoolA, provider );
        Console.WriteLine( "bool     {0}", converted );
        converted = Convert.ToString( StringA, provider );
        Console.WriteLine( "string   {0}", converted );
        converted = Convert.ToString( CharA, provider );
        Console.WriteLine( "char     {0}", converted );
        converted = Convert.ToString( TSpanA, provider );
        Console.WriteLine( "TimeSpan {0}", converted );
        converted = Convert.ToString( ObjOther, provider );
        Console.WriteLine( "object   {0}", converted );
    }
}

/*
This example of Convert.ToString( non-numeric, IFormatProvider )
generates the following output. The provider type, argument type,
and argument value are displayed.

Note: The IFormatProvider object is not called for Boolean, String,
Char, TimeSpan, and non-numeric Object.

System.Globalization.NumberFormatInfo   int      -252645135
System.Globalization.NumberFormatInfo   double   61680.3855
System.Globalization.NumberFormatInfo   object   -98765.4321
System.Globalization.DateTimeFormatInfo DateTime 9/11/2001 1:45:00 PM

bool     True
string   Qwerty
char     $
TimeSpan 00:18:00
object   DummyProvider

*/
// Example of Convert.ToString(non-numeric types, IFormatProvider).
open System
open System.Globalization

// Create an instance of the IFormatProvider with an object expression.
let provider =
    { new IFormatProvider with
        // Normally, GetFormat returns an object of the requested type
        // (usually itself) if it is able; otherwise, it returns Nothing.
        member _.GetFormat(argType: Type) =
            // Here, the type of argType is displayed, and GetFormat
            // always returns Nothing.
            printf $"{argType,-40}"
            null 
    }

// Convert these values using DummyProvider.
let Int32A     = -252645135
let DoubleA    = 61680.3855
let ObjDouble  = -98765.4321 :> obj
let DayTimeA   = DateTime(2001, 9, 11, 13, 45, 0)

let BoolA      = true
let StringA    = "Qwerty"
let CharA      = '$'
let TSpanA     = TimeSpan(0, 18, 0)
let ObjOther   = provider :> obj

[<EntryPoint>]
let main _ =
    printfn
        """This example of Convert.ToString(non-numeric, IFormatProvider) 
generates the following output. The provider type, argument type, 
and argument value are displayed.

Note: The IFormatProvider object is not called for Boolean, String, 
Char, TimeSpan, and non-numeric Object."""

    // The format provider is called for these conversions.
    printfn ""
    let converted = Convert.ToString(Int32A, provider)
    printfn $"int      {converted}"
    let converted = Convert.ToString(DoubleA, provider)
    printfn $"double   {converted}"
    let converted = Convert.ToString(ObjDouble, provider)
    printfn $"object   {converted}"
    let converted = Convert.ToString(DayTimeA, provider)
    printfn $"DateTime {converted}"

    // The format provider is not called for these conversions.
    printfn ""
    let converted = Convert.ToString(BoolA, provider)
    printfn $"bool     {converted}"
    let converted = Convert.ToString(StringA, provider)
    printfn $"string   {converted}"
    let converted = Convert.ToString(CharA, provider)
    printfn $"char     {converted}"
    let converted = Convert.ToString(TSpanA, provider)
    printfn $"TimeSpan {converted}"
    let converted = Convert.ToString(ObjOther, provider)
    printfn $"object   {converted}"

    0

// This example of Convert.ToString(non-numeric, IFormatProvider)
// generates the following output. The provider type, argument type,
// and argument value are displayed.
//
// Note: The IFormatProvider object is not called for Boolean, String,
// Char, TimeSpan, and non-numeric Object.
//
// System.Globalization.NumberFormatInfo   int      -252645135
// System.Globalization.NumberFormatInfo   double   61680.3855
// System.Globalization.NumberFormatInfo   object   -98765.4321
// System.Globalization.DateTimeFormatInfo DateTime 9/11/2001 1:45:00 PM
//
// bool     True
// string   Qwerty
// char     $
// TimeSpan 00:18:00
// object   DummyProvider
' Example of Convert.ToString( non-numeric types, IFormatProvider ).
Imports System.Globalization

' An instance of this class can be passed to methods that require 
' an IFormatProvider.
Public Class DummyProvider
    Implements IFormatProvider

    ' Normally, GetFormat returns an object of the requested type
    ' (usually itself) if it is able; otherwise, it returns Nothing. 
    Public Function GetFormat( argType As Type ) As Object _
        Implements IFormatProvider.GetFormat

        ' Here, the type of argType is displayed, and GetFormat
        ' always returns Nothing.
        Console.Write( "{0,-40}", argType.ToString( ) )
        Return Nothing

    End Function 
End Class

Module ConvertNonNumericProviderDemo

    Sub Main( )

        ' Create an instance of the IFormatProvider.
        Dim provider    As New DummyProvider( )
        Dim converted   As String

        ' Convert these values using DummyProvider.
        Dim Int32A      As Integer  = -252645135   
        Dim DoubleA     As Double   = 61680.3855
        Dim ObjDouble   As Object   = CType( -98765.4321, Object )
        Dim DayTimeA    As DateTime = _
                            new DateTime( 2001, 9, 11, 13, 45, 0 )

        Dim BoolA       As Boolean  = True
        Dim StringA     As String   = "Qwerty"
        Dim CharA       As Char     = "$"c
        Dim TSpanA      As TimeSpan = New TimeSpan( 0, 18, 0 )
        Dim ObjOther    As Object   = CType( provider, Object )

        Console.WriteLine( "This example of " & _
            "Convert.ToString( non-numeric, IFormatProvider ) " & _
            vbCrLf & "generates the following output. The " & _
            "provider type, argument type, " & vbCrLf & "and " & _
            "argument value are displayed." )
        Console.WriteLine( vbCrLf & _
            "Note: The IFormatProvider object is not called for " & _
            "Boolean, String, " & vbCrLf & "Char, TimeSpan, " & _
            "and non-numeric Object." )

        ' The format provider is called for these conversions.
        Console.WriteLine( )
        converted =  Convert.ToString( Int32A, provider )
        Console.WriteLine( "Int32    {0}", converted )
        converted =  Convert.ToString( DoubleA, provider )
        Console.WriteLine( "Double   {0}", converted )
        converted =  Convert.ToString( ObjDouble, provider )
        Console.WriteLine( "Object   {0}", converted )
        converted =  Convert.ToString( DayTimeA, provider )
        Console.WriteLine( "DateTime {0}", converted )

        ' The format provider is not called for these conversions.
        Console.WriteLine( )
        converted =  Convert.ToString( BoolA, provider )
        Console.WriteLine( "Boolean  {0}", converted )
        converted =  Convert.ToString( StringA, provider )
        Console.WriteLine( "String   {0}", converted )
        converted =  Convert.ToString( CharA, provider )
        Console.WriteLine( "Char     {0}", converted )
        converted =  Convert.ToString( TSpanA, provider )
        Console.WriteLine( "TimeSpan {0}", converted )
        converted =  Convert.ToString( ObjOther, provider )
        Console.WriteLine( "Object   {0}", converted )

    End Sub
End Module

' This example of Convert.ToString( non-numeric, IFormatProvider )
' generates the following output. The provider type, argument type,
' and argument value are displayed.
'
' Note: The IFormatProvider object is not called for Boolean, String,
' Char, TimeSpan, and non-numeric Object.
' 
' System.Globalization.NumberFormatInfo   Int32    -252645135
' System.Globalization.NumberFormatInfo   Double   61680.3855
' System.Globalization.NumberFormatInfo   Object   -98765.4321
' System.Globalization.DateTimeFormatInfo DateTime 9/11/2001 1:45:00 PM
' 
' Boolean  True
' String   Qwerty
' Char     $
' TimeSpan 00:18:00
' Object   DummyProvider

Hinweise

Diese Implementierung ist identisch mit Boolean.ToString. Sie gibt Boolean.TrueString werte true und Boolean.FalseString für false Werte zurück.

Gilt für

ToString(Int64)

Konvertiert den Wert der angegebenen 64-Bit-Ganzzahl mit Vorzeichen in die entsprechende Zeichenfolgendarstellung.

public:
 static System::String ^ ToString(long value);
public static string ToString (long value);
static member ToString : int64 -> string
Public Shared Function ToString (value As Long) As String

Parameter

value
Int64

Die zu konvertierende 64-Bit-Ganzzahl mit Vorzeichen.

Gibt zurück

String

Eine Zeichenfolgendarstellung von value.

Beispiele

Im folgenden Beispiel wird jedes Element in einem langen ganzzahligen Array in die entsprechende Zeichenfolgendarstellung konvertiert.

// Create a NumberFormatInfo object and set several of its
// properties that control default integer formatting.
System.Globalization.NumberFormatInfo provider = new System.Globalization.NumberFormatInfo();
provider.NegativeSign = "minus ";

long[] values = { -200, 0, 1000 };

foreach (long value in values)
   Console.WriteLine("{0,-6}  -->  {1,10}",
                     value, Convert.ToString(value, provider));
// The example displays the following output:
//       -200    -->   minus 200
//       0       -->           0
//       1000    -->        1000
// Create a NumberFormatInfo object and set several of its
// properties that control default integer formatting.
let provider = System.Globalization.NumberFormatInfo()
provider.NegativeSign <- "minus "

let values = [| -200; 0; 1000 |]

for value in values do
    printfn $"{value,-6}  -->  {Convert.ToString(value, provider),10}"
// The example displays the following output:
//       -200    -->   minus 200
//       0       -->           0
//       1000    -->        1000
' Create a NumberFormatInfo object and set several of its
' properties that control default integer formatting.
Dim provider As New System.Globalization.NumberFormatInfo()
provider.NegativeSign = "minus "

Dim values() As Long = { -200, 0, 1000 }

For Each value As Long In values
   Console.WriteLine("{0,-6}  -->  {1,10}", _
                     value, Convert.ToString(value, provider))
Next
' The example displays the following output:
'       -200    -->   minus 200
'       0       -->           0
'       1000    -->        1000

Hinweise

Diese Implementierung ist identisch mit Int64.ToString().

Gilt für