2009-11-04 70 views
0

當格式化雙打時,是否可以指定字符總數?如何指定C#數字格式的字符總數?

可以說我有0.00,我指定了總字符數(7),我想要得到1.23e-4。格式「G7」會給出1.2345e-4。

更多的例子:

0.00000F -> 1.23e-7 
0.00F -> 1.23e-4 
0.12345678F  -> 1.23e-1 
1.2345678F  -> 1.23457 
12.345678F  -> 12.3457 
12345678F   -> 1.234e8 

回答

2

你可能想用 「E」 格式的字符串像這樣...

String.Format("{0:0.00e+0}", number); 
+0

謝謝,它適用於我的示例,但這不完全是我想要的:)讓我試着給出更多細節:我的目標是能夠指定輸出中的字符總數,因此如果指定4 I想要得到這些結果: 0.00000F - > 1.23E-7 0.00F - > 1.23E-4 0.12345678F - > 1.23E-1 1.2345678F - > 1.2345 12.345678F - > 12.345 – Paulius 2009-11-04 13:33:45

1

您對「精確度」的含義有誤解。對於浮點數,「精度」意味着有效數字的數量,所以「G6」返回的結果是正確的。

如果您想要固定數量的字符,請使用像Jason建議的custom format string