Single.ToString Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Преобразует числовое значение этого экземпляра в эквивалентное строковое представление.
Перегрузки
| Имя | Описание |
|---|---|
| ToString() |
Преобразует числовое значение этого экземпляра в эквивалентное строковое представление. |
| ToString(IFormatProvider) |
Преобразует числовое значение этого экземпляра в эквивалентное строковое представление, используя указанные сведения о формате, зависящее от языка и региональных параметров. |
| ToString(String) |
Преобразует числовое значение этого экземпляра в эквивалентное строковое представление, используя указанный формат. |
| ToString(String, IFormatProvider) |
Преобразует числовое значение этого экземпляра в эквивалентное строковое представление, используя указанный формат и сведения о формате, зависящее от языка и региональных параметров. |
ToString()
- Исходный код:
- Single.cs
- Исходный код:
- Single.cs
- Исходный код:
- Single.cs
- Исходный код:
- Single.cs
- Исходный код:
- Single.cs
Преобразует числовое значение этого экземпляра в эквивалентное строковое представление.
public:
override System::String ^ ToString();
public override string ToString();
override this.ToString : unit -> string
Public Overrides Function ToString () As String
Возвращаемое значение
Строковое представление значения этого экземпляра.
Примеры
В следующем примере используется метод по умолчанию Single.ToString для отображения строковых представлений ряда значений Single .
float number;
number = 1.6E20F;
// Displays 1.6E+20.
Console.WriteLine(number.ToString());
number = 1.6E2F;
// Displays 160.
Console.WriteLine(number.ToString());
number = -3.541F;
// Displays -3.541.
Console.WriteLine(number.ToString());
number = -1502345222199E-07F;
// Displays -150234.5222199.
Console.WriteLine(number.ToString());
number = -15023452221990199574E-09F;
// Displays -15023452221.9902.
Console.WriteLine(number.ToString());
number = .60344F;
// Displays 0.60344.
Console.WriteLine(number.ToString());
number = .000000001F;
// Displays 1E-09.
Console.WriteLine(number.ToString());
let number = 1.6E20F
// Displays 1.6E+20.
printfn $"{number.ToString()}"
let number = 1.6E2F
// Displays 160.
printfn $"{number.ToString()}"
let number = -3.541F
// Displays -3.541.
printfn $"{number.ToString()}"
let number = -1502345222199E-07F
// Displays -150234.5222199.
printfn $"{number.ToString()}"
let number = -15023452221990199574E-09F
// Displays -15023452221.9902.
printfn $"{number.ToString()}"
let number = 0.60344F
// Displays 0.60344.
printfn $"{number.ToString()}"
let number = 0.000000001F
// Displays 1E-09.
printfn $"{number.ToString()}"
Dim number As Single
number = 1.6E20
' Displays 1.6E+20.
Console.WriteLine(number.ToString())
number = 1.6E2
' Displays 160.
Console.WriteLine(number.ToString())
number = -3.541
' Displays -3.541.
Console.WriteLine(number.ToString())
number = -1502345222199E-07
' Displays -150234.5222199.
Console.WriteLine(number.ToString())
number = -15023452221990199574E-09
' Displays -15023452221.9902.
Console.WriteLine(number.ToString())
number = .60344
' Displays 0.60344.
Console.WriteLine(number.ToString())
number = .000000001
' Displays 1E-09.
Console.WriteLine(number.ToString())
В следующем примере кода показано использование Parse(String) метода вместе с методом ToString() .
bool done = false;
string inp;
do
{
Console.Write("Enter a real number: ");
inp = Console.ReadLine();
try
{
s = Single.Parse(inp);
Console.WriteLine("You entered {0}.", s.ToString());
done = true;
}
catch (FormatException)
{
Console.WriteLine("You did not enter a number.");
}
catch (Exception e)
{
Console.WriteLine("An exception occurred while parsing your response: {0}", e.ToString());
}
} while (!done);
let mutable finished = false
while not finished do
printf "Enter a real number: "
let inp = stdin.ReadLine()
try
let s = Single.Parse inp
printfn $"You entered {s}."
finished <- true
with
| :? FormatException ->
printfn "You did not enter a number."
| e ->
printfn "An exception occurred while parsing your response: {e}"
Dim Done As Boolean = False
Dim Inp As String
Do
Console.Write("Enter a real number: ")
Inp = Console.ReadLine()
Try
S = Single.Parse(Inp)
Console.WriteLine("You entered " + S.ToString() + ".")
Done = True
Catch E As FormatException
Console.WriteLine("You did not enter a number.")
Catch E As Exception
Console.WriteLine("An exception occurred while parsing your response: " + E.ToString())
End Try
Loop While Not Done
Комментарии
Метод ToString() форматирует Single значение в формате по умолчанию ("G" или общего) текущего языка и региональных параметров. Если вы хотите указать другой формат или язык и региональные параметры, используйте другие перегрузки ToString метода, как показано ниже.
| Использование формата | Для языка и региональных параметров | Использование перегрузки |
|---|---|---|
| Формат по умолчанию ("G") | Определенный язык и региональные параметры | ToString(IFormatProvider) |
| Определенный формат | Язык и региональные параметры по умолчанию (current) | ToString(String) |
| Определенный формат | Определенный язык и региональные параметры | ToString(String, IFormatProvider) |
Возвращаемое значение может быть PositiveInfinitySymbol, NegativeInfinitySymbolNaNSymbolили строка формы:
[знак]целочисленные цифры[.[ дробные цифры][знак][знак]экспоненциальные цифры]
Необязательные элементы обрамляются квадратными скобками ([ и ]). Элементы, содержащие термин "цифры", состоят из ряда числовых символов от 0 до 9. В следующей таблице перечислены все элементы:
| Элемент | Description |
|---|---|
| знак | Отрицательный знак или положительный символ знака. |
| целочисленные цифры | Ряд цифр, указывающий целочисленную часть числа. Целочисленные цифры могут быть отсутствуют, если есть дробные цифры. |
| '.' | Символ десятичной запятой для конкретного языка и региональных параметров. |
| дробные цифры | Ряд цифр, указывающий дробную часть числа. |
| 'e' | Строчный символ e, указывающий экспоненциальное (научное) нотацию. |
| экспоненциальные цифры | Ряд цифр, указывающий экспонент. |
Некоторые примеры возвращаемого значения: "100", "-123,456,789", "123.45e+6", "500", "3.1416", "600", "-0.123" и "-Infinity".
.NET предоставляет обширную поддержку форматирования, которая подробно описана в следующих разделах форматирования:
Дополнительные сведения об описателях числовых форматов см. в строках стандартного числового формата и пользовательских строк числовых форматов.
Дополнительные сведения о форматировании см. в типов форматирования.
См. также раздел
Применяется к
ToString(IFormatProvider)
- Исходный код:
- Single.cs
- Исходный код:
- Single.cs
- Исходный код:
- Single.cs
- Исходный код:
- Single.cs
- Исходный код:
- Single.cs
Преобразует числовое значение этого экземпляра в эквивалентное строковое представление, используя указанные сведения о формате, зависящее от языка и региональных параметров.
public:
virtual System::String ^ ToString(IFormatProvider ^ provider);
public:
System::String ^ ToString(IFormatProvider ^ provider);
public string ToString(IFormatProvider provider);
public string ToString(IFormatProvider? provider);
override this.ToString : IFormatProvider -> string
Public Function ToString (provider As IFormatProvider) As String
Параметры
- provider
- IFormatProvider
Объект, предоставляющий сведения о форматировании, зависящее от языка и региональных параметров.
Возвращаемое значение
Строковое представление значения этого экземпляра, указанного в параметре provider.
Реализации
Примеры
В следующем примере отображается строковое представление двух Single значений с помощью CultureInfo объектов, представляющих несколько различных языков и региональных параметров.
float value;
value = -16325.62015F;
// Display value using the invariant culture.
Console.WriteLine(value.ToString(CultureInfo.InvariantCulture));
// Display value using the en-GB culture.
Console.WriteLine(value.ToString(CultureInfo.CreateSpecificCulture("en-GB")));
// Display value using the de-DE culture.
Console.WriteLine(value.ToString(CultureInfo.CreateSpecificCulture("de-DE")));
value = 16034.125E21F;
// Display value using the invariant culture.
Console.WriteLine(value.ToString(CultureInfo.InvariantCulture));
// Display value using the en-GB culture.
Console.WriteLine(value.ToString(CultureInfo.CreateSpecificCulture("en-GB")));
// Display value using the de-DE culture.
Console.WriteLine(value.ToString(CultureInfo.CreateSpecificCulture("de-DE")));
// This example displays the following output to the console:
// -16325.62015
// -16325.62015
// -16325,62015
// 1.6034125E+25
// 1.6034125E+25
// 1,6034125E+25
let value = -16325.62015F
// Display value using the invariant culture.
printfn $"{value.ToString CultureInfo.InvariantCulture}"
// Display value using the en-GB culture.
printfn $"""{value.ToString(CultureInfo.CreateSpecificCulture "en-GB")}"""
// Display value using the de-DE culture.
printfn $"""{value.ToString(CultureInfo.CreateSpecificCulture "de-DE")}"""
let value = 16034.125E21F
// Display value using the invariant culture.
printfn $"{value.ToString CultureInfo.InvariantCulture}"
// Display value using the en-GB culture.
printfn $"""{value.ToString(CultureInfo.CreateSpecificCulture "en-GB")}"""
// Display value using the de-DE culture.
printfn $"""{value.ToString(CultureInfo.CreateSpecificCulture "de-DE")}"""
// This example displays the following output to the console:
// -16325.62015
// -16325.62015
// -16325,62015
// 1.6034125E+25
// 1.6034125E+25
// 1,6034125E+25
Dim value As Single
value = -16325.62015
' Display value using the invariant culture.
Console.WriteLine(value.ToString(CultureInfo.InvariantCulture))
' Display value using the en-GB culture.
Console.WriteLine(value.ToString(CultureInfo.CreateSpecificCulture("en-GB")))
' Display value using the de-DE culture.
Console.WriteLine(value.ToString(CultureInfo.CreateSpecificCulture("de-DE")))
value = 16034.125E21
' Display value using the invariant culture.
Console.WriteLine(value.ToString(CultureInfo.InvariantCulture))
' Display value using the en-GB culture.
Console.WriteLine(value.ToString(CultureInfo.CreateSpecificCulture("en-GB")))
' Display value using the de-DE culture.
Console.WriteLine(value.ToString(CultureInfo.CreateSpecificCulture("de-DE")))
' This example displays the following output to the console:
' -16325.62015
' -16325.62015
' -16325,62015
' 1.6034125E+25
' 1.6034125E+25
' 1,6034125E+25
Комментарии
Метод ToString(IFormatProvider) форматирует Single значение в формате по умолчанию ("G" или общего) указанного языка и региональных параметров. Если вы хотите указать другой формат или текущий язык и региональные параметры, используйте другие перегрузки ToString метода, как показано ниже.
| Использование формата | Для языка и региональных параметров | Использование перегрузки |
|---|---|---|
| Формат по умолчанию ("G") | Язык и региональные параметры по умолчанию (current) | ToString() |
| Определенный формат | Язык и региональные параметры по умолчанию (current) | ToString(String) |
| Определенный формат | Определенный язык и региональные параметры | ToString(String, IFormatProvider) |
Возвращаемое значение может быть PositiveInfinitySymbol, NegativeInfinitySymbolNaNSymbolили строка формы:
[знак]целочисленные цифры[.[ дробные цифры][знак][знак]экспоненциальные цифры]
Необязательные элементы обрамляются квадратными скобками ([ и ]). Элементы, содержащие термин "цифры", состоят из ряда числовых символов в диапазоне от 0 до 9. В следующей таблице перечислены все элементы.
| Элемент | Description |
|---|---|
| Знак | Отрицательный знак или положительный символ знака. |
| целочисленные цифры | Ряд цифр, указывающий целочисленную часть числа. Целочисленные цифры могут быть отсутствуют, если есть дробные цифры. |
| '.' | Символ десятичной запятой для конкретного языка и региональных параметров. |
| дробные цифры | Ряд цифр, указывающий дробную часть числа. |
| 'e' | Строчный символ e, указывающий экспоненциальное (научное) нотацию. |
| экспоненциальные цифры | Ряд цифр, указывающий экспонент. |
Некоторые примеры возвращаемого значения: "100", "-123,456,789", "123.45e+6", "500", "3.1416", "600", "-0.123" и "-Infinity".
.NET предоставляет обширную поддержку форматирования, которая подробно описана в следующих разделах форматирования:
Дополнительные сведения об описателях числовых форматов см. в строках стандартного числового формата и пользовательских строк числовых форматов.
Дополнительные сведения о форматировании см. в типов форматирования.
Параметр provider является реализацией IFormatProvider , метод которой GetFormat возвращает NumberFormatInfo объект. Как правило, provider это CultureInfo объект или NumberFormatInfo объект. Параметр provider предоставляет сведения о языке и региональных параметрах, используемых в форматировании. Если provider это nullтак, возвращаемое значение отформатировано с помощью NumberFormatInfo данных для текущего языка и региональных параметров.
Чтобы преобразовать значение в его строковое Single представление с помощью заданного языка и региональных параметров и определенной строки формата, вызовите Single.ToString(String, IFormatProvider) метод.
См. также раздел
Применяется к
ToString(String)
- Исходный код:
- Single.cs
- Исходный код:
- Single.cs
- Исходный код:
- Single.cs
- Исходный код:
- Single.cs
- Исходный код:
- Single.cs
Преобразует числовое значение этого экземпляра в эквивалентное строковое представление, используя указанный формат.
public:
System::String ^ ToString(System::String ^ format);
public string ToString(string format);
public string ToString(string? format);
override this.ToString : string -> string
Public Function ToString (format As String) As String
Параметры
- format
- String
Строка числового формата.
Возвращаемое значение
Строковое представление значения этого экземпляра, указанного в параметре format.
Исключения
format недопустим.
Примеры
В следующем примере определяется числовое значение и форматирует его как значение валюты с помощью стандартной строки числового формата "C" и в качестве числового значения до трех десятичных разрядов с помощью строки стандартного числового формата "N". Строки результатов форматируются с помощью соглашений языка и региональных параметров en-US. Дополнительные сведения о строках числовых форматов см. в разделе "Стандартные числовые строки формата" и "Настраиваемые строки числового формата".
using System;
public class Example
{
public static void Main()
{
Double number = 1764.3789;
// Format as a currency value.
Console.WriteLine(number.ToString("C"));
// Format as a numeric value with 3 decimal places.
Console.WriteLine(number.ToString("N3"));
}
}
// The example displays the following output:
// $1,764.38
// 1,764.379
let number = 1764.3789
// Format as a currency value.
printfn $"""{number.ToString "C"}"""
// Format as a numeric value with 3 decimal places.
printfn $"""{number.ToString "N3"}"""
// The example displays the following output:
// $1,764.38
// 1,764.379
Module Example
Public Sub Main()
Dim number As Single = 1764.3789
' Format as a currency value.
Console.WriteLine(number.ToString("C"))
' Format as a numeric value with 3 decimal places.
Console.WriteLine(number.ToString("N3"))
End Sub
End Module
' The example displays the following output:
' $1,764.38
' 1,764.379
В следующем примере показаны несколько Single значений, использующих каждый из поддерживаемых описателей стандартного числового формата вместе с двумя строками настраиваемого числового формата. Одна из этих строк пользовательского Single формата иллюстрирует, как заполнить значение с начальными нулями. При преобразовании числовых значений в строки пример использует соглашения о форматировании языка и региональных параметров en-US.
float[] numbers= { 1054.32179F, -195489100.8377F, 1.0437E21F,
-1.0573e-05F };
string[] specifiers = { "C", "E", "e", "F", "G", "N", "P",
"R", "#,000.000", "0.###E-000",
"000,000,000,000.00###" };
foreach (float number in numbers)
{
Console.WriteLine("Formatting of {0}:", number);
foreach (string specifier in specifiers)
Console.WriteLine(" {0,5}: {1}",
specifier, number.ToString(specifier));
Console.WriteLine();
}
// The example displays the following output to the console:
// Formatting of 1054.32179:
// C: $1,054.32
// E: 1.054322E+003
// e: 1.054322e+003
// F: 1054.32
// G: 1054.32179
// N: 1,054.32
// P: 105,432.18 %
// R: 1054.32179
// #,000.000: 1,054.322
// 0.###E-000: 1.054E003
// 000,000,000,000.00###: 000,000,001,054.322
//
// Formatting of -195489100.8377:
// C: ($195,489,100.84)
// E: -1.954891E+008
// e: -1.954891e+008
// F: -195489100.84
// G: -195489100.8377
// N: -195,489,100.84
// P: -19,548,910,083.77 %
// R: -195489100.8377
// #,000.000: -195,489,100.838
// 0.###E-000: -1.955E008
// 000,000,000,000.00###: -000,195,489,100.00
//
// Formatting of 1.0437E+21:
// C: $1,043,700,000,000,000,000,000.00
// E: 1.043700E+021
// e: 1.043700e+021
// F: 1043700000000000000000.00
// G: 1.0437E+21
// N: 1,043,700,000,000,000,000,000.00
// P: 104,370,000,000,000,000,000,000.00 %
// R: 1.0437E+21
// #,000.000: 1,043,700,000,000,000,000,000.000
// 0.###E-000: 1.044E021
// 000,000,000,000.00###: 1,043,700,000,000,000,000,000.00
//
// Formatting of -1.0573E-05:
// C: $0.00
// E: -1.057300E-005
// e: -1.057300e-005
// F: 0.00
// G: -1.0573E-05
// N: 0.00
// P: 0.00 %
// R: -1.0573E-05
// #,000.000: 000.000
// 0.###E-000: -1.057E-005
// 000,000,000,000.00###: -000,000,000,000.00001
let numbers =
[| 1054.32179F; -195489100.8377F; 1.0437E21F; -1.0573e-05F |]
let specifiers =
[| "C"; "E"; "e"; "F"; "G"; "N"; "P"
"R"; "#,000.000"; "0.###E-000"
"000,000,000,000.00###" |]
for number in numbers do
printfn $"Formatting of {number}:"
for specifier in specifiers do
printfn $" {specifier,5}: {number.ToString specifier}"
printfn ""
// The example displays the following output to the console:
// Formatting of 1054.32179:
// C: $1,054.32
// E: 1.054322E+003
// e: 1.054322e+003
// F: 1054.32
// G: 1054.32179
// N: 1,054.32
// P: 105,432.18 %
// R: 1054.32179
// #,000.000: 1,054.322
// 0.###E-000: 1.054E003
// 000,000,000,000.00###: 000,000,001,054.322
//
// Formatting of -195489100.8377:
// C: ($195,489,100.84)
// E: -1.954891E+008
// e: -1.954891e+008
// F: -195489100.84
// G: -195489100.8377
// N: -195,489,100.84
// P: -19,548,910,083.77 %
// R: -195489100.8377
// #,000.000: -195,489,100.838
// 0.###E-000: -1.955E008
// 000,000,000,000.00###: -000,195,489,100.00
//
// Formatting of 1.0437E+21:
// C: $1,043,700,000,000,000,000,000.00
// E: 1.043700E+021
// e: 1.043700e+021
// F: 1043700000000000000000.00
// G: 1.0437E+21
// N: 1,043,700,000,000,000,000,000.00
// P: 104,370,000,000,000,000,000,000.00 %
// R: 1.0437E+21
// #,000.000: 1,043,700,000,000,000,000,000.000
// 0.###E-000: 1.044E021
// 000,000,000,000.00###: 1,043,700,000,000,000,000,000.00
//
// Formatting of -1.0573E-05:
// C: $0.00
// E: -1.057300E-005
// e: -1.057300e-005
// F: 0.00
// G: -1.0573E-05
// N: 0.00
// P: 0.00 %
// R: -1.0573E-05
// #,000.000: 000.000
// 0.###E-000: -1.057E-005
// 000,000,000,000.00###: -000,000,000,000.00001
Dim numbers() As Single = {1054.32179, -195489100.8377, 1.0437E21, _
-1.0573e-05}
Dim specifiers() As String = { "C", "E", "e", "F", "G", "N", "P", _
"R", "#,000.000", "0.###E-000", _
"000,000,000,000.00###"}
For Each number As Single In numbers
Console.WriteLine("Formatting of {0}:", number)
For Each specifier As String In specifiers
Console.WriteLine(" {0,5}: {1}", _
specifier, number.ToString(specifier))
Next
Console.WriteLine()
Next
' The example displays the following output to the console:
' Formatting of 1054.32179:
' C: $1,054.32
' E: 1.054322E+003
' e: 1.054322e+003
' F: 1054.32
' G: 1054.32179
' N: 1,054.32
' P: 105,432.18 %
' R: 1054.32179
' #,000.000: 1,054.322
' 0.###E-000: 1.054E003
' 000,000,000,000.00###: 000,000,001,054.322
'
' Formatting of -195489100.8377:
' C: ($195,489,100.84)
' E: -1.954891E+008
' e: -1.954891e+008
' F: -195489100.84
' G: -195489100.8377
' N: -195,489,100.84
' P: -19,548,910,083.77 %
' R: -195489100.8377
' #,000.000: -195,489,100.838
' 0.###E-000: -1.955E008
' 000,000,000,000.00###: -000,195,489,100.00
'
' Formatting of 1.0437E+21:
' C: $1,043,700,000,000,000,000,000.00
' E: 1.043700E+021
' e: 1.043700e+021
' F: 1043700000000000000000.00
' G: 1.0437E+21
' N: 1,043,700,000,000,000,000,000.00
' P: 104,370,000,000,000,000,000,000.00 %
' R: 1.0437E+21
' #,000.000: 1,043,700,000,000,000,000,000.000
' 0.###E-000: 1.044E021
' 000,000,000,000.00###: 1,043,700,000,000,000,000,000.00
'
' Formatting of -1.0573E-05:
' C: $0.00
' E: -1.057300E-005
' e: -1.057300e-005
' F: 0.00
' G: -1.0573E-05
' N: 0.00
' P: 0.00 %
' R: -1.0573E-05
' #,000.000: 000.000
' 0.###E-000: -1.057E-005
' 000,000,000,000.00###: -000,000,000,000.00001
Комментарии
Метод ToString(String) форматирует Single значение в указанном формате с помощью соглашений текущего языка и региональных параметров. Если вы хотите использовать формат по умолчанию (G или общие) или указать другой язык и региональные параметры, используйте другие перегрузки ToString метода, как показано ниже.
| Использование формата | Для языка и региональных параметров | Использование перегрузки |
|---|---|---|
| Формат по умолчанию ("G") | Язык и региональные параметры по умолчанию (current) | ToString() |
| Формат по умолчанию ("G") | Определенный язык и региональные параметры | ToString(IFormatProvider) |
| Определенный формат | Определенный язык и региональные параметры | ToString(String, IFormatProvider) |
Возвращаемое значение может быть PositiveInfinitySymbol, NegativeInfinitySymbolNaNSymbolили строковое представление значения текущего экземпляра, как указано в параметре format.
Параметр format может быть любым допустимым описатель стандартного числового формата, кроме D и X, а также любого сочетания настраиваемых описателей числовых форматов. Если формат имеет null или пустую строку, возвращаемое значение отформатируется с помощью общего описателя числовых форматов ("G").
.NET предоставляет обширную поддержку форматирования, которая подробно описана в следующих разделах форматирования:
Дополнительные сведения об описателях числовых форматов см. в строках стандартного числового формата и пользовательских строк числовых форматов.
Дополнительные сведения о форматировании см. в типов форматирования.
По умолчанию возвращаемое значение содержит только 7 цифр точности, хотя не более 9 цифр сохраняется внутри системы. Если значение этого экземпляра больше 7 цифр, ToString(String) возвращается PositiveInfinitySymbol или NegativeInfinitySymbol вместо ожидаемого числа. Если требуется дополнительная точность, укажите format спецификацию формата G9, которая всегда возвращает 9 цифр точности или R, которая возвращает 7 цифр, если число может быть представлено с этой точностью или 9 цифрами, если число может быть представлено только с максимальной точностью.
См. также раздел
- Parse(String)
- String
- Типы форматирования в .NET
- Практическое руководство. Заполнение числа с начальными нулями
Применяется к
ToString(String, IFormatProvider)
- Исходный код:
- Single.cs
- Исходный код:
- Single.cs
- Исходный код:
- Single.cs
- Исходный код:
- Single.cs
- Исходный код:
- Single.cs
Преобразует числовое значение этого экземпляра в эквивалентное строковое представление, используя указанный формат и сведения о формате, зависящее от языка и региональных параметров.
public:
virtual System::String ^ ToString(System::String ^ format, IFormatProvider ^ provider);
public string ToString(string format, IFormatProvider provider);
public string ToString(string? format, IFormatProvider? provider);
override this.ToString : string * IFormatProvider -> string
Public Function ToString (format As String, provider As IFormatProvider) As String
Параметры
- format
- String
Строка числового формата.
- provider
- IFormatProvider
Объект, предоставляющий сведения о форматировании, зависящее от языка и региональных параметров.
Возвращаемое значение
Строковое представление значения этого экземпляра, указанного format и provider.
Реализации
Примеры
В следующем примере отображается Single значение с помощью каждого из поддерживаемых числовых описателей стандартного числового формата для нескольких разных языков и региональных параметров.
float value = 16325.62901F;
string specifier;
CultureInfo culture;
// Use standard numeric format specifiers.
specifier = "G";
culture = CultureInfo.CreateSpecificCulture("eu-ES");
Console.WriteLine(value.ToString(specifier, culture));
// Displays: 16325,62901
Console.WriteLine(value.ToString(specifier, CultureInfo.InvariantCulture));
// Displays: 16325.62901
specifier = "C";
culture = CultureInfo.CreateSpecificCulture("en-US");
Console.WriteLine(value.ToString(specifier, culture));
// Displays: $16,325.63
culture = CultureInfo.CreateSpecificCulture("en-GB");
Console.WriteLine(value.ToString(specifier, culture));
// Displays: £16,325.63
specifier = "E04";
culture = CultureInfo.CreateSpecificCulture("sv-SE");
Console.WriteLine(value.ToString(specifier, culture));
// Displays: 1,6326E+004
culture = CultureInfo.CreateSpecificCulture("en-NZ");
Console.WriteLine(value.ToString(specifier, culture));
// Displays: 1.6326E+004
specifier = "F";
culture = CultureInfo.CreateSpecificCulture("fr-FR");
Console.WriteLine(value.ToString(specifier, culture));
// Displays: 16325,63
culture = CultureInfo.CreateSpecificCulture("en-CA");
Console.WriteLine(value.ToString(specifier, culture));
// Displays: 16325.63
specifier = "N";
culture = CultureInfo.CreateSpecificCulture("es-ES");
Console.WriteLine(value.ToString(specifier, culture));
// Displays: 16.325,63
culture = CultureInfo.CreateSpecificCulture("fr-CA");
Console.WriteLine(value.ToString(specifier, culture));
// Displays: 16 325,63
specifier = "P";
culture = CultureInfo.InvariantCulture;
Console.WriteLine((value/10000).ToString(specifier, culture));
// Displays: 163.26 %
culture = CultureInfo.CreateSpecificCulture("ar-EG");
Console.WriteLine((value/10000).ToString(specifier, culture));
// Displays: 163.256 %
let value = 16325.62901F
// Use standard numeric format specifiers.
let specifier = "G"
let culture = CultureInfo.CreateSpecificCulture "eu-ES"
printfn $"{value.ToString(specifier, culture)}"
// Displays: 16325,62901
printfn $"{value.ToString(specifier, CultureInfo.InvariantCulture)}"
// Displays: 16325.62901
let specifier = "C"
let culture = CultureInfo.CreateSpecificCulture "en-US"
printfn $"{value.ToString(specifier, culture)}"
// Displays: $16,325.63
let culture = CultureInfo.CreateSpecificCulture "en-GB"
printfn $"{value.ToString(specifier, culture)}"
// Displays: £16,325.63
let specifier = "E04"
let culture = CultureInfo.CreateSpecificCulture "sv-SE"
printfn $"{value.ToString(specifier, culture)}"
// Displays: 1,6326E+004
let culture = CultureInfo.CreateSpecificCulture "en-NZ"
printfn $"{value.ToString(specifier, culture)}"
// Displays: 1.6326E+004
let specifier = "F"
let culture = CultureInfo.CreateSpecificCulture "fr-FR"
printfn $"{value.ToString(specifier, culture)}"
// Displays: 16325,63
let culture = CultureInfo.CreateSpecificCulture "en-CA"
printfn $"{value.ToString(specifier, culture)}"
// Displays: 16325.63
let specifier = "N"
let culture = CultureInfo.CreateSpecificCulture "es-ES"
printfn $"{value.ToString(specifier, culture)}"
// Displays: 16.325,63
let culture = CultureInfo.CreateSpecificCulture "fr-CA"
printfn $"{value.ToString(specifier, culture)}"
// Displays: 16 325,63
let specifier = "P"
let culture = CultureInfo.InvariantCulture
printfn $"{(value / 10000f).ToString(specifier, culture)}"
// Displays: 163.26 %
let culture = CultureInfo.CreateSpecificCulture "ar-EG"
printfn $"{(value / 10000f).ToString(specifier, culture)}"
// Displays: 163.256 %
Dim value As Single = 16325.62901
Dim specifier As String
Dim culture As CultureInfo
' Use standard numeric format specifiers.
specifier = "G"
culture = CultureInfo.CreateSpecificCulture("eu-ES")
Console.WriteLine(value.ToString(specifier, culture))
' Displays: 16325,62901
Console.WriteLine(value.ToString(specifier, CultureInfo.InvariantCulture))
' Displays: 16325.62901
specifier = "C"
culture = CultureInfo.CreateSpecificCulture("en-US")
Console.WriteLine(value.ToString(specifier, culture))
' Displays: $16,325.63
culture = CultureInfo.CreateSpecificCulture("en-GB")
Console.WriteLine(value.ToString(specifier, culture))
' Displays: £16,325.63
specifier = "E04"
culture = CultureInfo.CreateSpecificCulture("sv-SE")
Console.WriteLine(value.ToString(specifier, culture))
' Displays: 1,6326E+004
culture = CultureInfo.CreateSpecificCulture("en-NZ")
Console.WriteLine(value.ToString(specifier, culture))
' Displays: 1.6326E+004
specifier = "F"
culture = CultureInfo.CreateSpecificCulture("fr-FR")
Console.WriteLine(value.ToString(specifier, culture))
' Displays: 16325,63
culture = CultureInfo.CreateSpecificCulture("en-CA")
Console.WriteLine(value.ToString(specifier, culture))
' Displays: 16325.63
specifier = "N"
culture = CultureInfo.CreateSpecificCulture("es-ES")
Console.WriteLine(value.ToString(specifier, culture))
' Displays: 16.325,63
culture = CultureInfo.CreateSpecificCulture("fr-CA")
Console.WriteLine(value.ToString(specifier, culture))
' Displays: 16 325,63
specifier = "P"
culture = CultureInfo.InvariantCulture
Console.WriteLine((value/10000).ToString(specifier, culture))
' Displays: 163.26 %
culture = CultureInfo.CreateSpecificCulture("ar-EG")
Console.WriteLine((value/10000).ToString(specifier, culture))
' Displays: 163.256 %
Комментарии
Метод ToString(String, IFormatProvider) форматирует Single значение в указанном формате заданного языка и региональных параметров. Если вы хотите использовать формат по умолчанию или параметры языка и региональных параметров, используйте другие перегрузки ToString метода, как показано ниже.
| Использование формата | Для языка и региональных параметров | Использование перегрузки |
|---|---|---|
| Формат по умолчанию ("G") | Язык и региональные параметры по умолчанию (current) | ToString() |
| Формат по умолчанию ("G") | Определенный язык и региональные параметры | ToString(IFormatProvider) |
| Определенный формат | Язык и региональные параметры по умолчанию (current) | ToString(String) |
Возвращаемое значение может быть PositiveInfinitySymbol, NegativeInfinitySymbolNaNSymbolили строковое представление значения текущего экземпляра, как указано в параметре format.
Параметр format может быть любым допустимым описатель стандартного числового формата, кроме D и X, а также любого сочетания настраиваемых описателей числовых форматов. Если format строка null пуста или пуста, возвращаемое значение для этого экземпляра отформатировано с помощью общего описателя числового формата ("G").
.NET предоставляет обширную поддержку форматирования, которая подробно описана в следующих разделах форматирования:
Дополнительные сведения об описателях числовых форматов см. в строках стандартного числового формата и пользовательских строк числовых форматов.
Дополнительные сведения о форматировании см. в типов форматирования.
Параметр provider является реализацией IFormatProvider , метод которой GetFormat возвращает NumberFormatInfo объект. Как правило, provider это CultureInfo объект или NumberFormatInfo объект. Параметр provider предоставляет сведения о языке и региональных параметрах, используемых в форматировании. В противном providernullслучае возвращаемое значение отформатировано объектом NumberFormatInfo для текущего языка и региональных параметров.
По умолчанию возвращаемое значение содержит только 7 цифр точности, хотя не более 9 цифр сохраняется внутри системы. Если значение этого экземпляра больше 7 цифр, ToString возвращается PositiveInfinitySymbol или NegativeInfinitySymbol вместо ожидаемого числа. Если требуется дополнительная точность, укажите format спецификацию формата G9, которая всегда возвращает 9 цифр точности или R, которая возвращает 7 цифр, если число может быть представлено с этой точностью или 9 цифрами, если число может быть представлено только с максимальной точностью.
См. также раздел
- Parse(String)
- String
- Типы форматирования в .NET
- Практическое руководство. Заполнение числа с начальными нулями