(в первую очередь: это не является дубликат Format numbers with floating points and sign in textbox in C#)избежать лишних нулей форматирования чисел в C#
Я использую раствор из dodald (https://stackoverflow.com/a/27510646/3179989) для форматирования чисел с плавающей точкой и знаком, чтобы сделать их выровнены на основе плавающей точкой:
textbox1.Text = String.Format("{0:+;-}{0,9:0.00000;0.00000}", number1);
textbox2.Text = String.Format("{0:+;-}{0,9:0.00000;0.00000}", number2);
textbox3.Text = String.Format("{0:+;-}{0,9:0.00000;0.00000}", number3);
textbox4.Text = String.Format("{0:+;-}{0,9:0.00000;0.00000}", number4);
textbox5.Text = String.Format("{0:+;-}{0,9:0.00000;0.00000}", number5);
Он отлично работает для чисел, как -1.23456 (результаты в «- 1.23456»), однако, если число 1,2, то это изменит его на «+ 1,20000».
Вопросы: В любом случае, чтобы избежать лишних нулей? Как я могу добавить пробел в конце текста, используя параметры форматирования и не используя (текст + "")?
Заранее спасибо
EDIT: чтобы уточнить это вот то, что я ищу:
-123.123456
+ 1.123456
- 0.123456
- 0.123
+ 1.1
- 12.123456
У меня есть несколько текстовых полей, которые вертикально. Я хочу, чтобы номера отображались так, как показано выше, где положение плавающей точки всегда фиксировано и вертикально выровнено. Решение, предоставленное dodald (https://stackoverflow.com/a/27510646/3179989), работает только для числа с пятью десятичными числами, такими как -1.23456 (результат «1.23456»), однако если число равно 1,2, то его решение изменит его на «+ 1.20000». Я хотел бы удалить добавленные нули в строку.
Не совсем уверен, о «Как я могу добавить пробел в конце текста, используя параметры форматирования ", но вместо' 0' используйте '#', – Habib
Я согласен, его непонятно, что вы хотите сделать. Возможно, вы могли бы добавить пример вывода. – paqogomez