Книга: ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание
Флаги форматирования строк .NET
Флаги форматирования строк .NET
Если требуется более сложное форматирование, каждый заполнитель может дополнительно содержать различные символы форматирования (в верхнем или в нижнем регистре), как показано в табл. 3.3.
Таблица 3.3. Символы форматирования строк .NET
Символы форматирования строк | Описание |
---|---|
C или с | Используются для форматирования денежных значений. По умолчанию перед этим флагом будет размещаться символ локальной денежкой единицы (скажем, знак доллара [$] для U.S. English) |
D или d | Используются для форматирования десятичных чисел. Этот флаг также указывает минимальное число знаков, используемое для представления значения |
Е или е | Используются для представлений в экспоненциальном формате |
F или f | Используются для представления в формате с фиксированным разделителем |
G или g | Обозначают general (общий [формат]). Эти символы можно использовать для представления чисел в формате с фиксированным разделителем или в экспоненциальном формате |
N или n | Используются для базового числового форматирования (с разделением групп разрядов) |
X или x | Используются для представления в шестнадцатиричном формате. Если используется X (в верхнем регистре), то в шестнадцатиричном представлении используются символы верхнего регистра |
Символы форматирования добавляются в виде суффикса к соответствующему заполнителю через двоеточие (например, {0:C}, {1:d}, {2:X} и т.д.). Предположим, что вы добавили в Main() следующий программный код.
// Используем некоторые дескрипторы формата.
static void Main(string[] args) {
…
Console.WriteLine("Формат C: {0:C}", 99989.987);
Console.WriteLine("Формат D9: {0:D9}", 99999);
Console.WriteLine("Формат E: {0:E}", 99999.76543);
Console.WriteLine("Формат F3: {0:F3}", 99999.9999);
Console.WriteLine("Формат N: {0:N}", 99999);
Console.WriteLine("Формат X: {0:X}", 99999);
Console.WriteLine("Фopмaт x: {0:x}", 99999);
}
Использование символов форматирования в .NET не ограничивается консольными приложениями. Те же флаги можно использовать в контексте статического метода String.Format(). Это может быть полезно тогда, когда в памяти нужно построить строку с числовыми значениями, подходящую для использования в приложениях любого типа (Windows Forms, ASP.NET, Web-сервисы XML и т.д.).
static void Main(string[] args) {
// Использование статического метода String.Format()
// для построения новой строки.
string formatStr;
formatStr = String.Format("Хотите получить {0:C} на свой счет?", 99989.987);
Console.WriteLine(formatStr);
}
На рис. 3.7 показан пример вывода данной программы.
Рис. 3.7. Флаги форматирования строк в действии
Исходный код. Проект BasicConsoleIO размещен в подкаталоге, соответствующем главе 3.
- Инструмент командной строки gbak
- Инструмент командной строки gfix
- Как выделить строку, столбец и ячейки
- Удобная операция объединения строк
- Улучшенный протокол локальных соединений (XNET)
- Работа со строками
- Преобразование строки в целое: stoi( )
- Chapter 16. Commercial products based on Linux, iptables and netfilter
- NETMAP target
- Internet Service Providers who use assigned IP addresses
- Специфика .NET Compact Framework: ADO.NET
- Формы Web ASP.NET