如何在 C# 中将双精度转换为指数表示法

how to convert from double to exponential notation in c#

如何在 C# 中将双精度数转换为指数表示法?

我的号码
我希望数字看起来像:

-1.6500000000000000e1

我看文章:

但这并没有完全回答我:

number.ToString("e16", CultureInfo.InvariantCulture)

给我提供号码:

-1.6500000000000000e+001

我希望最后只有 e1 表示非负数,或者 e-1 表示负数

谢谢!

尝试使用格式化:

  Double value = -1.6500000000000000e1;

  // e15 - exponential form, small "e" for exponent, 16 digits
  String result = value.ToString("e16", CultureInfo.InvariantCulture);

  Console.Write(result);

编辑:如果你想要 "e1" 形式的指数,你应该这样指定:

  String result = value.ToString("0.0000000000000000e0", CultureInfo.InvariantCulture);