Format(FormatString: String; Args: Array): String;
FormatString. Формат представления элементов.
Args. Массив элементов, которые необходимо представить в заданном формате.
Метод Format возвращает строку, отформатированную в соответствии с заданными инструкциями.
Метод предназначен для форматирования различных чисел и даты/времени. Для различных типов данных можно использовать различные параметры форматирования. Все параметры форматирования указываются в параметре FormatString. Значения, которые необходимо отформатировать - в параметре Args. Каждое форматируемое значение в параметре FormatString указывается в следующем виде: {x[,y:Az]}.
{x[,y:Az]} | |
x | Индекс элемента массива Args, к которому необходимо применить форматирование. |
y | Спецификатор выравнивания. Используется для форматирования целых и вещественных чисел. Определяет общую длину отформатированной строки с учетом дробной части и запятой. |
A | Параметры форматирования. |
z | Спецификатор точности. Используется для форматирования целые и вещественные числа. Определяет количество знаков дробной части. |
Элементы формата y, А и z являются необязательными, если они не указаны, то возвращается значение без форматирования.
Параметр форматирования | Краткое описание |
{0:G} | Общий формат. Применяется для вывода выражений с фиксированной точностью. Число преобразуется в наиболее короткую запись из записи с фиксированной запятой или экспоненциальной записи, в зависимости от типа числа и наличия спецификатора точности. Если спецификатор точности не указан, то точность будет равна 9 знакам после запятой. |
{0:F} | Вывод значения с фиксированной точностью. По умолчанию значения выводятся с точностью до двух знаков. |
{0:N} | Стандартное числовое форматирование с использованием разделителей между разрядами. В качестве разделителя используется пробел. |
{0:P} | Процентный формат числа. |
Параметр форматирования | Краткое описание |
{0:d} | Краткий формат даты. |
{0:D} | Полный формат даты. |
{0:t} | Краткий формат времени. |
{0:T} | Полный формат времени. |
{0:f} | Полный формат даты и короткий времени. |
{0:F} | Полный формат даты и полный времени. |
{0:g} | Короткий формат даты и времени. |
{0:G} | Короткий формат даты и полный времени. |
Sub UserProc;
Var
Arr: Array Of Variant;
s: String;
Begin
Arr := New Variant[5];
Arr[0] := Integer.MaxValue;
Arr[1] := 123456.123456;
Arr[2] := Math.Pi;
Arr[3] := Decimal.MaxValue;
Arr[4] := 0.5;
s := String.Format("Числа с различным форматированием:" + #13 + #10 +
"'{0:G1}'
- с ограничением точности 1 знак; " + #13 + #10 +
"'{1:F}'
- с фиксированной точностью 2 знака; " + #13 + #10 +
"'{2,8:F4}'
- с фиксированной точностью и ограничением по длине; " + #13 + #10 +
"'{3:N}'
- форматирование с разделителем; " + #13 + #10 +
"'{4:P}'
- процентный формат." , Arr);
Debug.WriteLine(s);
End Sub UserProc;
После выполнения примера в консоль среды разработки будет выведена следующая строка:
Числа с различным форматированием:
'2147483647,0' - с ограничением точности 1 знак;
'123456,12' - с фиксированной точностью 2 знака;
' 3,1416' - с фиксированной точностью и ограничением по длине;
'79 228 162 514 264 337 593 543 950 336,00' - форматирование с разделителем;
'50,00%' - процентный формат.
Sub UserProc;
Var
d: DateTime;
s, s1, s2, s3: String;
Begin
d := DateTime.Compose(2006, 11, 10, 12, 30, 30, 1);
s := String.Format("{0:d}", d);
s1 := String.Format("Сегодня {0:D}", d);
s2 := String.Format("Время {0:t}", d);
s3 := String.Format("{0:T}", d);
End Sub UserProc;
После выполнения примера в переменных s, s1, s2 ,s3 будут содержаться следующие значения:
Переменная | Значение |
s | '10.11.2006' |
s1 | 'Сегодня 10 ноября 2006 г.' |
s2 | 'Время 12:30' |
s3 | '12:30:30' |
См. также: