Читаем C# 4.0: полное руководство полностью

    str = String.Format("{0:p}", v2);

    Console.WriteLine(str);

    str = String.Format("{0:X}", x);

    Console.WriteLine(str);

    str = String.Format("{0:D12}", x);

    Console.WriteLine(str);

    str = String.Format("{0:C}", 189.99);

    Console.WriteLine (str);

  }

}

Аналогично методу WriteLine(), метод String.Format() позволяет встраивать в свой вызов обычный текст вместе со спецификаторами формата, причем в вызове данного метода может быть указано несколько спецификаторов формата и значений. В качестве примера рассмотрим еще одну программу, отображающую текущую сумму и произведение чисел от 1 до 10.

// Еще один пример применения метода Format().

using System;

class FormatDemo2 {

  static void Main() {

    int i;

    int sum = 0;

    int prod = 1;

    string str;

    /* Отобразить текущую сумму и произведение чисел от 1 до 10. */

    for(i=1; i <= 10; i++) {

      sum += i;

      prod *= i;

      str = String.Format("Сумма:{0,3:D} Произведение:{1,8:D}",

               sum, prod);

      Console.WriteLine(str);

    }

  }

}

Ниже приведен результат выполнения этой программы

Сумма:    1    Произведение:       1

Сумма:    3    Произведение:       2

Сумма:    6    Произведение:       6

Сумма:   10    Произведение:      24

Сумма:   15    Произведение:     120

Сумма:   21    Произведение:     720

Сумма:   28    Произведение:    5040

Сумма:   36    Произведение:   40320

Сумма:   45    Произведение:  362880

Сумма:   55    Произведение: 3628800

Обратите особое внимание в данной программе на следующий оператор.

str = String.Format("Сумма:{0,3:D} Произведение:{1,8:D}", sum, prod);

В этом операторе содержится вызов метода Format() с двумя спецификаторами формата: одним — для суммы (в переменной sum), а другим — для произведения (в переменной prod). Обратите также внимание на то, что номера аргументов указываются таким же образом, как и в вызове метода WriteLine(), и что в вызов метода Format() включается обычный текст, как, например, строка "Сумма :    ". Этот текст передается данному методу и становится частью выводимой строки.

Применение метода ToString() для форматирования данных

Для получения отформатированного строкового представления отдельного значения любого числового типа, которому соответствует встроенная структура, например Int32 или Double, можно воспользоваться методом ToString(). Этой цели служит приведенная ниже форма метода ToString().

public string ToString("форматирующая строка")

В этой форме метод ToString() возвращает строковое представление вызывающего объекта в том формате, который определяет спецификатор "форматирующая строка", передаваемый данному методу. Например, в следующей строке кода формируется строковое представление значения 188.99 в формате денежной единицы с помощью спецификатора формата С.

string str = 189.99.ToString("С");

Обратите внимание на то, что спецификатор формата передается методу ToString() непосредственно. В отличие от встроенных команд форматирования, используемых в вызовах методов WriteLine() и Format(), где для этой цели дополнительно указываются номер аргумента и ширина поля, в вызове метода ToString() достаточно указать только спецификатор формата.

Ниже приведен вариант примера предыдущей программы форматирования, измененный с целью продемонстрировать применение метода ToString() для получения отформатированных строк. Этот вариант дает такой же результат, как и предыдущий.

// Использовать метод ToString() для форматирования значений.

using System;

class ToStringDemo {

  static void Main() {

    double v = 17688.65849;

    double v2 = 0.15;

    int x = 21;

    string str = v.ToString("F2");

    Console.WriteLine(str);

    str = v.ToString("N5");

    Console.WriteLine(str);

    str = v.ToString("e");

Перейти на страницу:

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных