.NET 格式说明符,用于尾数介于 0 和 1 之间的科学记数法

dav*_*nal 3 c# string format fortran

我正在使用 Fortran 程序,该程序期望使用 Fortran 的E格式说明符(即科学记数法)输入浮点数,但尾数必须介于 0 和 1 之间。所以而不是:

"3147.3" --> "3.1473E3",
Run Code Online (Sandbox Code Playgroud)

它需要

"3147.3" --> "0.31473E4".
Run Code Online (Sandbox Code Playgroud)

我无法修改 Fortran 程序,因为它可以与其他一些特殊的程序一起使用。

看起来 C#E格式字符串会给我前者。有没有什么简单的方法可以在 C# 中实现后者?

Jef*_*ado 5

您可以像这样指定自定义格式。

var num = 3147.3;
num.ToString("\\0.#####E0"); // "0.31473E4"
Run Code Online (Sandbox Code Playgroud)