C# 字符串。设置整数格式以使用不带小数点的千位分隔符,或对小整数使用前导0
愚蠢的问题,我想设置一个整数的格式,使其显示时带有1000的分隔符(,),但也不带小数点和前导0 到目前为止,我的努力是:C# 字符串。设置整数格式以使用不带小数点的千位分隔符,或对小整数使用前导0,c#,string-formatting,C#,String Formatting,愚蠢的问题,我想设置一个整数的格式,使其显示时带有1000的分隔符(,),但也不带小数点和前导0 到目前为止,我的努力是: String.Format("{0} {1}", 5, 5000); // 5 5000 String.Format("{0:n} {1:n}", 5, 5000); // 5.00 5,000.00 String.Format("{0:0,0} {1:0,0}", 5, 5000); // 05 5,000 我想要的输出是: 5
String.Format("{0} {1}", 5, 5000); // 5 5000
String.Format("{0:n} {1:n}", 5, 5000); // 5.00 5,000.00
String.Format("{0:0,0} {1:0,0}", 5, 5000); // 05 5,000
我想要的输出是:
5 5,000
有什么明显的东西我遗漏了吗
String.Format("{0:#,0} {1:#,0}", 5, 5000); // "5 5,000"
在格式字符串中表示将属于此处的数字放在此处,或者用[leading/training]零[使事物对齐,等等]。编辑:您肯定想要一个作为模式中的最后一个数字,否则零值将被呈现为空字符串0
表示除非这里有有效数字,否则不要在输出中输入任何内容#
- 最后一部分需要是
,而不是0
(正如我最初使用的那样),否则,零值将被呈现为零长度字符串#
- 这对我很有效
String.Format("{0:#,0} {1:#,0}", 5, 5000); // 5 5,000
试一试
试试这个:-
String.Format("{0:n0}",5000) // 5,000
String.Format("{0:n0}",5) // 5
String.Format("{0:n0}",0) // 0
#
真的不会在任何地方放一个空格,是吗?我以为如果没有数字放在那里,它什么也没做……当数字为0时,它返回一个空字符串。请参阅@eulerfx的评论re my Answers这是一个有文化的吗?i、 例如,是否使用正确的千位分隔符?是的,如果未提供FormatProvider,则String.Format使用当前区域性信息。因此,如果您将数字分组符号(千位分隔符)从更改为-那么结果将是5-000而不是5000这是迄今为止最好的解决方案,因为它考虑了用户文化!非常感谢你!System.String.Format(“Bla:{0:#,##0;(-#,###0}),80300.656)如果没有四舍五入:System.String.Format(“Bla:{0:#,##0;(#,####0)}),Floor(80300.456。所以要确定你要在哪里使用这个字符串,然后正确地解析它。
String.Format("{0:n0}",5000) // 5,000
String.Format("{0:n0}",5) // 5
String.Format("{0:n0}",0) // 0