0

CellDataに等しいオブジェクト があります-0.000009482102880653542

ファイル出力時にそのまま表示したい.csv。そのためには、オブジェクトを文字列に変換する必要があります。

output = CellData.ToString();
output = string.Format("{0}", CellData);

上記の 2 つの場合は、outputになり-9.48210288065354E-06ます。(小数点付き)のoutputように返したいと思い ます。-0.0000094821028806535423

とにかく私はこれを機能させることができますか?

4

2 に答える 2

1

数値を Decimal として格納すると、非科学的な (通常の) 表記で出力されます。データの取得元によっては、double から変換する必要がある場合があります。

double myNumber = -0.0000094821028806535423;
Object CellData = new Decimal(myNumber);

(-0.00000948210288065354 を与える)、または Decimal を直接使用できる場合があります。

Object CellData = -0.0000094821028806535423m;

double はすべての数値を正確に表すことができないため、double から変換すると、結果の精度が低下します。また、それらに対して実行する計算が増えるほど、正確な結果から遠ざかる可能性があります。

数値がコードに由来し、計算を実行する必要がない場合は、それを文字列として直接保存することもできます。

于 2012-05-03T00:21:51.120 に答える
-1

なしで試してください

output = string.Format("{0}", CellData);

だけ残す

output = CellData.ToString(); 
于 2012-05-03T00:20:34.463 に答える