Вопрос

В моем приложении есть возможности форматировать строку, используя string.Format() функция Я хочу добавить возможность вернуться пустым, когда результат равен нулю.

Насколько я вижу, это можно сделать, используя код: 0.toString("0;; ");, но, как я уже упоминал, мне нужно использовать string.Format() функция (поскольку он должен иметь возможность использовать, например {0:P} формат для процента.

Кто -нибудь знает, как чистить нулевое значение, используя string.Format() функция?

Спасибо, Питер

Это было полезно?

Решение

Почему бы тебе не сделать это с if else утверждение?

string result = String.Format(the value);
if(result=="0")
{
   result=" ";
}

Другие советы

String.Format() поддержка а ; раздел секции.

Попробуйте, например String.Format("{0:#%;;' '}", 0);.

Мой ответ немного опоздал, но вы можете попробовать следующее:

{0:#.##%;-#.##%;''}

Или, возможно, более элегантно в качестве метода расширения на int:

public static class StringFormatters
{
    public static string ToNonZeroString(this int i) => i == 0 ? "" : i.ToString();
}

а потом

(1+1-2).ToNonZeroString()
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top