摘要:本文将带你了解C#编程之数字千分位问题,希望本文对大家学C#/.Net有所帮助。
1、C#中用最简单的方法把数字(不含小数)转换为千分位格式:
如1234567变成1,234,567
方法:
1234567.ToString("###,###") 或 1234567.ToString("N0")
2、C#中把数字转换成带两位小数的千分位字符:
如1234567.891变成1,234,567.89
方法:
String.Format("{0:N}",1234567.891); //默认为两位小数,如果没有小数位,则小数位补两个0
或String.Format("{0:N2}",1234567.891);
字母 含义
C或c Currency 货币格式
D或d Decimal 十进制格式(十进制整数,不要和.Net的Decimal数据类型混淆了)
E或e Exponent 指数格式
F或f Fixed point 固定精度格式
G或g General 常用格式
N或n 用逗号分割千位的数字,比如1234将会被变成1,234
P或p Percentage 百分符号格式
R或r Round-trip 圆整(只用于浮点数)保证一个数字被转化成字符串以后可以再被转回成同样的数字
X或x Hex 16进制格式
static void Main() {int i=12345;
Console.WriteLine("{0:C}",i); //货币
Console.WriteLine("{0:D}",i); //十进制数
Console.WriteLine("{0:E}",i); //科学技术法
Console.WriteLine("{0:F}",i); // 浮点数表示法
Console.WriteLine("{0:G}",i); //G或g General 常用格式
Console.WriteLine("{0:N}",i); //N或n 用逗号分割千位的数字
}
测试:
第一种方法:
/// <summary>/// 利用ToString转换成指定格式/// </summary>/// <param name="s"></param>/// <returns></returns>static string Thousands(string s){
double n=double.Parse(s);
string nums = n.ToString("###,###");//或.ToString("N0")
return nums;
}
//调用第一种方法try
{
Console.WriteLine("请输入数字:");
string s = (Console.ReadLine()).ToString();
string th = Thousands(s);
Console.WriteLine("数字已标记千分位:\n{0}", th);
Console.ReadLine();
}catch
{
Console.WriteLine("输入有误,程序结束请重新输入");
Console.ReadLine();
}
第二种方法:
/// <summary>
/// 利用string.Format限定格式转换
/// </summary>
/// <param name="s"></param>
/// <returns></returns>
static string Thousand(string s)
{
int i = int.Parse(s);
string str=string.Format("{0:N}", i);//得出千分位结果并保留两位小数
int strLast=str.IndexOf(".");//找到.在字符串中的位置
string nums=str.Substring(0,strLast);//保留.之前的字符串
return nums;
}
//调用第二种方法
string nums=Thousand("12312312");
Console.WriteLine(nums);
Console.ReadLine();
以上就介绍了C#.NET的相关知识,希望对C#.NET有兴趣的朋友有所帮助。了解更多内容,请关注职坐标编程语言C#.NET频道!
您输入的评论内容中包含违禁敏感词
我知道了
请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号