Ответ 1
Вы можете просто сделать:
string.Format("{0}", yourDouble);
Он будет содержать только цифры при необходимости.
Если вы хотите, чтобы другие примеры форматирования удваивали строку, проверьте эту ссылку .
РЕДАКТИРОВАТЬ: На основе вашего комментария вы хотите ,
seperator, чтобы вы могли:
string.Format("{0:0,0.########}", yourDouble);
Просто поместите как можно больше #
для максимального количества десятичных знаков, которые вы хотите показать. Он будет показывать цифры только при необходимости, но до максимальных цифр, исходя из количества #
, которое вы включаете в формат. #
означает, что при необходимости указывается цифра, поэтому, если вы укажете число, подобное 123
без десятичной дроби, оно будет отображаться как 1,234
, но если вы дадите ему 1234.456
, оно будет отображаться как 1,234.456
. Если вы выберете максимальные цифры, которые вы указали, они будут округлены.
РЕДАКТИРОВАТЬ: Чтобы исправить свой двойной нулевой сценарий, просто измените его на:
string.Format("{0:#,0.########}", yourDouble);
Это должно работать отлично сейчас:)