SyncFusion中的字符串格式?

时间:2013-10-30 09:35:43

标签: syncfusion

字符串格式:

“#0。##%;(#0。##%);”

上面将将double格式化为带有两个小数点的百分比字符串,如果它是负数则将其放入括号中,如果它为零则将其留空。

问题是,如果double值没有小数点,例如,如果值为2,则由于某种原因,结果字符串为“2%”而不是“2.00%”。

我的问题是:如何让它变为“ 2.00%”?

P.S。格式化在Syncfusion网格单元对象上发生,需要字符串掩码。

p.s.s。必须保持上面用斜体描述的现有功能。

2 个答案:

答案 0 :(得分:2)

哈希表示可选字符。使用“#0.00%”(等)。

答案 1 :(得分:2)

您可以将字符串格式#0.00%用于2个数字位置。

“#”表示可选择显示数字,而“0”表示必须显示。在这种情况下(#0.00%)代表2个数字位置是强制性的,数字权利在“。”之前。也是强制性的。如果在“0”之前有任何数字,它将显示。否则,它不会因为这个数字是可选的。

e.g。 2 - > 2.00%

12 - > 12.00%

120 - > 120.00%

11.234 - > 11.23%

在这种情况下使用“P”或“P2”也可以正常工作。 “P”代表百分比,“2”代表数字位置的数量。 e.g。

double number = .2468013;
Console.WriteLine(number.ToString("P", CultureInfo.InvariantCulture));
// Displays 24.68 %
Console.WriteLine(number.ToString("P",CultureInfo.CreateSpecificCulture("hr-HR")));           
// Displays 24,68%     
Console.WriteLine(number.ToString("P1", CultureInfo.InvariantCulture));
// Displays 24.7 %

您可以参考more details的MSDN。