Пользовательское форматирование строки: ToString ("00") - PullRequest
0 голосов
/ 06 мая 2010

С учетом следующего кода:

string istanbul = "523";
Convert.ToInt32(istanbul.ToString("00"));

что это возвращает?

Ответы [ 2 ]

5 голосов
/ 06 мая 2010

Спецификатор пользовательского формата "0" служит символом с нулевым заполнителем. Если форматируемое значение имеет цифру в позиции, где в строке формата появляется ноль, эта цифра копируется в строку результата; в противном случае в результирующей строке появляется ноль. Положение самого левого нуля до десятичной точки и самого правого нуля после десятичной точки определяет диапазон цифр, которые всегда присутствуют в строке результата.

Спецификатор «00» приводит к тому, что значение округляется до ближайшей цифры, предшествующей десятичной, где всегда используется округление от нуля. Например, форматирование 34,5 с «00» приведет к значению 35.

Пользовательский спецификатор "0" текст ссылки

3 голосов
/ 06 мая 2010

Это даже не скомпилируется:

string istanbul = 523

Вы не можете присвоить число строковой переменной таким образом. Вы также неправильно завершили оператор с ;.

C # также чувствителен к регистру, поэтому istanbul и Istanbul относятся к различным переменным.

Чтобы ответить на вопрос:

523.ToString("00"); // This will evaluate to the string "523"
Convert.ToInt32("523"); // This will evaluate to the integer 523

Читать о пользовательских строках числового форматирования .

...