C#数字格式:前导加号和空格

我想做的是在财务报告中显示数字,如下所示:


+   5000

+    176

-  10000

- 620230

因此,我需要打印出6个数字长的数字,并带有前导符号。


我试图将前导符号与前导空格相结合,例如:String.Format("{0,7:+#;-#;+0}", value);,但事实证明它给了我:


   +5000

    +176

  -10000

 -620230

无论如何,有没有使用String.Format来获取我想要的输出?


编辑:我知道我可以使自己的格式函数来实现该结果,并且我确实使用了一个。我出于好奇而问String.Format,看是否可以做到。


德玛西亚99
浏览 285回答 2
2回答

摇曳的蔷薇

您需要一些技巧来组合各个部分(符号和数字)。这是完成的过程:string.Format("{0:+;-;+}{0,7:#;#;0}",someNumber);{0,7:#;#;0}将格式化数字,以便仅显示绝对值。而第一部分{0:+;-;+}将只显示相应于该值的符号。为了方便起见,您可以制作自己的方法来包装该行代码。
打开App,查看更多内容
随时随地看视频慕课网APP