string.Format () Blank zéro
-
10-10-2019 - |
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
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()