Как конвертировать десятичное число из 123,45 в 0000000012345 с помощью C # - PullRequest
0 голосов
/ 10 марта 2012

У меня есть требование при выполнении какой-либо конверсионной работы для отправки десятичного поля в строку, заполненную нулями.

I need to turn 1234.56 into 000000000123456

Я знаю, что могу умножить на 100, чтобы избавиться от десятичной дроби (не мой любимыйчто нужно сделать), но тогда как я могу отформатировать его в соответствии с требованием?

Я предполагаю, что есть какой-то встроенный метод Format, я просто не могу его найти.

Спасибо.

Ответы [ 3 ]

4 голосов
/ 10 марта 2012

Я бы попробовал это: Как: дополнить число начальными нулями

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

2 голосов
/ 10 марта 2012

Это будет сделано:

string.Format( "{0:D15}", 123456 );

Вам следует обратиться к документации для строки. Формат .

0 голосов
/ 10 марта 2012

На основании документации от http://msdn.microsoft.com/en-us/library/0c899ak8.aspx Вы можете сделать это, используя следующий формат:

Decimal value = new Decimal(1234.56);
            Console.WriteLine("I need to turn {0} into {1}", value, value.ToString("000000000000000"));

С уважением, Herber

...