C# 如何在c语言中给数字加逗号

C# 如何在c语言中给数字加逗号,c#,C#,使用String.Format如何确保所有数字都有逗号,例如123000=1,23000 我得到了像这样的输出 123,234,000 12,32,34,000 我不想要它。但我预计会有这样的产出 123,234,000 12,32,34,000 您可以使用ToString来代替它。ToString将打印2位十进制数字。要去掉这两个数字,可以使用toString 0 编辑:要将数字二乘二分开: 123123123123.ToString("#,#", new NumberFormatIn

使用String.Format如何确保所有数字都有逗号,例如123000=1,23000

我得到了像这样的输出

123,234,000
12,32,34,000
我不想要它。但我预计会有这样的产出

123,234,000
12,32,34,000

您可以使用ToString来代替它。ToString将打印2位十进制数字。要去掉这两个数字,可以使用toString 0

编辑:要将数字二乘二分开:

123123123123.ToString("#,#", new NumberFormatInfo() { NumberGroupSizes = new[] { 2 } })
试着这样做:

int NewAmount=123456;
String.Format("{0:##,##,##,###}", NewAmount)

看起来您需要在中使用区域性格式en进行整型 试试下面的方法

String.Format(new CultureInfo("en-IN"), "{0:0,0}", amount);

您可以创建具有不同数字组大小的格式信息:

NumberFormatInfo formatInfo = new NumberFormatInfo();
formatInfo.NumberGroupSizes = new int[] { 3, 2 };

int amount = 123234000;
Console.WriteLine(String.Format(formatInfo, "{0:N0}", amount));
输出:

12,32,34,000
试试这个

123456789.ToString("N1", CultureInfo.CreateSpecificCulture("hi-IN"))

我想你是想把它显示为印度货币。如果是这样,这可能会有所帮助

    string fare = "1234567";
    decimal parsed = decimal.Parse(fare, CultureInfo.InvariantCulture);
    CultureInfo hindi = new CultureInfo("hi-IN");
    string text = string.Format(hindi, "{0:c}", parsed);
输出:

12,32,34,000

我相信您需要实现一个自定义数字格式提供程序…使用正则表达式,或编写自己的字符串转换函数。您能在MSDN上的自定义分隔符下给出一个简单的示例吗?^换句话说,您的区域性错误-另一个区域性是组分隔符说明符,不能这样用来指定组的大小,结果是123456。