当前位置: 首页 > >

C#字符串转换为float

发布时间:

?


1、解决不同计算机上,区域和时间不同而引起的转换问题(如:“123.456”报“字符串格式不正确”问题


//解决区域、语言变更引起的“识别不出小数点问题”如:转换时“123.456”转换时不认识"."






///


/// 数学转换类
///

public class MathConverter
{

///
/// object 转换 float(转换失败,则尝试将前部分数字转换为float)
///

///
/// 默认:0.00
public static float ObjectToFloat(object obj2Float)
{
float result = 0.00f; //默认值
if (obj2Float != null)
{
string str2Float = obj2Float.ToString(); //object to string
if (!float.TryParse(str2Float, out result)) //string直接转换为float,若失败,则获取字符串前部分数字转换为float
{
string strNumber = string.Empty;
foreach(char iChr in str2Float)
{
if(Char.IsNumber(iChr))
{
strNumber += iChr;
}
else
{
break;
}
}
if(!string.IsNullOrEmpty(strNumber))
{
float.TryParse(strNumber, out result);
}
}
}
return result;
}

///
/// object 转换 float(转换失败,则尝试将前部分数字转换为float)
///

///
/// 默认:0.00f
/// false : 转换失败
public static bool TryObjectToFloat(object obj2Float, out float result)
{
bool isSuccess = false;
result = 0.00f; //默认值
if (obj2Float != null)
{
string str2Float = obj2Float.ToString(); //object to string
if (!float.TryParse(str2Float, out result)) //string直接转换为float,若失败,则获取字符串前部分数字转换为float
{
string strNumber = string.Empty;
foreach (char iChr in str2Float)
{
if (Char.IsNumber(iChr))
{
strNumber += iChr;
}
else
{
break;
}
}
if (!string.IsNullOrEmpty(strNumber))
{
if(float.TryParse(strNumber, out result))
{
isSuccess = true;
}
}
}
else
{
isSuccess = true;
}
}
return isSuccess;
}
}

View Code

?



转载于:https://www.cnblogs.com/shenchao/p/8042785.html



友情链接: 时尚网 总结汇报 幼儿教育 小学教育 初中学习资料网