Question

Dans ma demande, il y a des possibilités pour formater une chaîne en utilisant la fonction string.Format(). Je veux ajouter la possibilité de revenir en blanc lorsque le résultat est nul.

Pour autant que je le vois, il est possible de le faire en utilisant le code: 0.toString("0;; ");, mais comme je l'ai déjà mentionné, je dois utiliser la fonction string.Format() (car il doit être en mesure d'utiliser par exemple le format de {0:P} pour le pourcentage .

quelqu'un ne sait comment en blanc une valeur zéro en utilisant la fonction string.Format()?

Merci, Peter

Était-ce utile?

La solution

pourquoi faites-vous pas avec la déclaration de if else?

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

Autres conseils

String.Format() href="http://msdn.microsoft.com/en-us/library/aa719871%28v=VS.71%29.aspx" rel="noreferrer"> supports le ; séparateur section.

Essayez par exemple String.Format("{0:#%;;' '}", 0);.

Ma réponse est un peu en retard, mais vous pouvez essayer ce qui suit:

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

Ou, peut-être plus élégante comme une méthode d'extension sur int:

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

et

(1+1-2).ToNonZeroString()
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top