C# 类型转换及保留小数位数的方法整理
一、类型转换
1、字符串转小数
string num = "12.34";//定义一个字符串
decimal decnumber = Convert.ToDecimal(num);//将字符串转换为小数
2、字符串转整数
在C#中,要将一个字符串或浮点数转换为整数,基本上有三种方法:
(1)使用强制类型转换:(int)浮点数
(2)使用Convert.ToInt32(string)
(3)使用int.Parse(string)或int.TryParse(string,out int)
3、Parse 方法
C# Parse 方法用于将字符串类型转换成任意基本类型.
具体的语法形式如下。
基本数据类型.Parse(字符串类型的值);
这里要求等号左、右两边的数据类型兼容。
string str = "123";
byte a = byte.Parse(str);
short b = byte.Parse(str);
4、Convert方法 (数据类型转换中最灵活的方法)
具体的语法形式如下:
数据类型 变量名 = convert.To数据类型(变量名);
这里 Convert.To 后面的数据类型要与等号左边的数据类型相匹配。
Convert 类常用的类型转换方法如下表所示:
Convert.ToInt16() 转换为整型(short)
Convert.ToInt32() 转换为整型(int)
Convert.ToInt64() 转换为整型(long)
Convert.ToChar() 转换为字符型(char)
Convert.ToString() 转换为字符串型(string)
Convert.ToDateTime( ) 转换为日期型(datetime)
Convert.ToDouble() 转换为双精度浮点型(double)
Conert.ToSingle() 转换为单精度浮点型(float)
二、保留小数位数
1、将小数保留到指定位数(Math.Round 四舍五入)
例:保留1位
Double stayTimeRound;
stayTimeRound = (Mathf.Round(stayTime * 10)) / 10;
//Double转float
float stayTimeFloat=float(stayTimeRound);
保留两位则*100 , /100 以此类推
2、float 保留N位四舍五入 (Math.Round)
Math.Round(0.55555,2)
3、double 保留N位四舍五入
double dbdata = 0.55555;
string str1 = dbdata.ToString(“f2”);//fN 保留N位,四舍五入
double s=0.55555;
result=s.ToString(“#0.00”);//点后面几个0就保留几位
4、string 保留N位四舍五入
string result = String.Format(“{0:N2}”, 0.55555);//2位
string result = String.Format(“{0:N3}”, 0.55555);//3位