首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >科学记数符号

科学记数符号
EN

Stack Overflow用户
提问于 2013-07-05 04:52:28
回答 3查看 71关注 0票数 1

我在一个文件中写下数字,它们应该是这样的:

代码语言:javascript
复制
  5.22226E+00 -2.31833E-01 -9.28221E-01  5.23851E+00 -2.33228E-01 -9.33804E-01
  5.25481E+00 -2.34622E-01 -9.39387E-01  5.27116E+00 -2.36016E-01 -9.44969E-01
  5.28756E+00  3.65029E-01  9.14477E-01  5.30401E+00  3.66841E-01  9.19016E-01
  5.32051E+00  3.68653E-01  9.23556E-01  5.33707E+00  3.70464E-01  9.28095E-01
  5.35367E+00  3.72276E-01  9.32634E-01  5.37033E+00  3.74088E-01  9.37174E-01

相反,它们是:

代码语言:javascript
复制
  5.22226E+00 -2.31833E-01 -9.28221E-01  5.23851E+00 -2.33228E-01 -9.33804E-01
  5.25481E+00 -2.34622E-01 -9.39387E-01  5.27116E+00 -2.36016E-01 -9.44969E-01
  5.28756E+00 3.65029E-01 9.14477E-01  5.30401E+00 3.66841E-01 9.19016E-01
  5.32051E+00 3.68653E-01 9.23556E-01  5.33707E+00 3.70464E-01 9.28095E-01
  5.35367E+00 3.72276E-01 9.32634E-01  5.37033E+00 3.74088E-01 9.37174E-01

不同的是,当符号为"+“时,我不会插入空格。我怎么能这么做呢?

我使用的代码是

代码语言:javascript
复制
myNumber.ToString("0.00000E+00", CultureInfo.InvariantCulture);
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-07-05 05:07:01

正如您所看到的here,分号根据正数设置格式,然后根据负数设置格式。

代码语言:javascript
复制
myNumber.ToString(" 0.00000E+00;-0.00000E+00", CultureInfo.InvariantCulture);

如果需要,您还可以强制显示+,或者更改-标志的显示方式。

票数 1
EN

Stack Overflow用户

发布于 2013-07-05 04:58:37

PadLeft应该很好地做到这一点:

代码语言:javascript
复制
myNumber.ToString("0.00000E+00", CultureInfo.InvariantCulture).PadLeft(12);
票数 3
EN

Stack Overflow用户

发布于 2013-07-05 04:58:52

最好的方法是使用conditional formatting

代码语言:javascript
复制
myNumber.ToString(" 0.00000E+00;-0.00000E+00", CultureInfo.InvariantCulture);

另一种(更冗长的)方法:

代码语言:javascript
复制
string s = myNumber.ToString("0.00000E+00", CultureInfo.InvariantCulture);
if (myNumber >= 0)
    s = " " + s;
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17477952

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档