如何在c#中的数字中添加逗号
本文关键字:添加 数字 | 更新日期: 2023-09-27 18:20:28
使用String.Format
如何确保所有数字都有逗号,例如123000 = "1,23,000";
String.Format(CultureInfo.InvariantCulture,"{0:0,0}",amount);
我得到了类似的输出
123,234,000
我不想要它。但我希望输出像一样
12,32,34,000
您可以创建具有不同数字组大小的格式信息:
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
int num=123234000;
Console.WriteLine(String.Format(
new System.Globalization.NumberFormatInfo()
{
NumberGroupSeparator=",",
NumberGroupSizes=new int[]{3,2}
},
"{0:#,#}", num));
输出:
12,32,34,000
您可以使用ToString("N")来代替它。ToString("N")将打印2位十进制数字。要去掉这两个数字,可以使用ToString("N0")。
编辑:将数字一分为二:
123123123123.ToString("#,#", new NumberFormatInfo() { NumberGroupSizes = new[] { 2 } })
这样尝试:
int NewAmount=123456;
String.Format("{0:##,##,##,###}", NewAmount)
看起来您需要以区域性格式en-in进行整数尝试以下
String.Format(new CultureInfo("en-IN"), "{0:0,0}", amount);
试试这个
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);