12

C# で 10 進数をフォーマットするために指数フォーマットを使用しています。たとえば、番号が

0.0001234567

でフォーマットする

(0.0000123456).ToString("E4");

ショー

1.2345E-004

以下のように指数から先頭のゼロを削除するにはどうすればよいですか?

1.2345E-4
4

2 に答える 2

12

MSDNの引用:

フォーマット指定子の場合は、指数の前に「E」または「e」のどちらを付けるかを示します。指数は常にプラスまたはマイナス記号と最低3桁で構成されます。必要に応じて、この最小値を満たすために指数にゼロが埋め込まれます。

これは、標準の番号指定子を使用します。

ただし、カスタム数値形式では、0の数を設定できます。

987654 ("#0.0e0") -> 98.8e4

あなたの場合、それは

(0.0000123456).ToString("#0.0E0"); //12.3E-6

BobSortコメントの後に編集

科学的記数法が必要な場合は、次のように小数点以下1桁のみが必要であることを指定できます。

(0.0000123456).ToString("0.00#E0"); //1.23E-5
于 2012-01-09T06:58:01.310 に答える
3

小数点以下4桁を常に表示する必要があると仮定して、試してください

"0.0000E+0"

だからそれは表示されます

(0.0000123456).ToString("0.0000E+0"); //1.2345E-5 
(0.0000120000).ToString("0.#E+0");    //1.2000E-5

小数点以下 4 桁を表示する必要がない場合

"0.#E+0"

だからそれは表示されます

(0.0000123456).ToString("0.#E+0"); //1.2E-5
(0.0000120000).ToString("0.#E+0"); //1.2E-5
于 2012-01-09T07:31:18.910 に答える