2012-02-14 21 views
4

我有以下類型的十進制數轉換爲指數格式要求表示數字

0.00001格式化爲0.01E-04

我用這個方法如下: string.Format("{0:E2}", dValue);

但這返回0.01E-004

所以我需要限制的數字位數爲2後E。 這可能嗎?如果是這樣:怎麼樣?

+0

那麼,需要限制小數點後的位數和E後的數字2.所以它應該表示爲0.01E-04。 – siva 2012-02-14 07:34:08

回答

7

你需要使用自定義格式字符串來指定如何格式化十進制:

string.Format("{0:0.##E+00}", dValue); 

你可以找到更多關於在MSDN here自定義數字格式字符串。有關於Exponent格式的特定部分。

6

認爲你想要的東西,如:

string text = dValue.ToString("0.###E+00"); 

(變化#字符的數目改變的小數位數之前大腸桿菌)

你可以做到這一點一個複合格式說明符以及通過調用string.Format,但個人我會使用一個簡單的,除非你需要將其他文字放在它周圍,在這種情況下,你會使用類似的東西:

string text = string.Format("Before {0:0.0###E+00} After", dValue); 
+0

我得到d錯誤比d幫助 – 2012-02-14 08:07:39

+0

@PranayRana:對不起,我不知道你的意思。 – 2012-02-14 08:28:37

+0

嘿感謝指出我的錯誤在我的答案.......... – 2012-02-14 09:39:19