多点小数的C#.NET类型?

时间:2014-07-18 12:54:54

标签: c# asp.net .net type-conversion .net-4.5

我遇到了一个似乎无法找到答案的问题。我有一个数字作为字符串格式为“5.2.3”我将这种格式转换为能够在C#中使用大于和小于运算符的格式?我尝试了以下哪些错误:

Decimal version = Decimal.Parse(strVersion);
if (version < Decimal.Parse("5.2.4"))
{
     // Do something
}

基本上这个数字的十进制类型给出了错误“无效的格式异常”?

3 个答案:

答案 0 :(得分:7)

我想你想比较版本。

您可以{/ 3}}使用

请尝试以下示例代码System.Version

string v1 = "1.23.56.1487";
        string v2 = "1.24.55.487";

        var version1 = new Version(v1);
        var version2 = new Version(v2);

        var result = version1.CompareTo(version2);
        if (result > 0)
            Console.WriteLine("version1 is greater");
        else if (result < 0)
            Console.WriteLine("version2 is greater");
        else
            Console.WriteLine("versions are equal");
        return;

答案 1 :(得分:6)

你看过System.Version了吗?您的变量名称似乎表明您正在查看版本号,并且该类提供了比较运算符。

答案 2 :(得分:0)

使用版本

string n1 = "5.2.4";
string n2 = "5.3.4";

Version v1 = new Version(n1);
Version v2 = new Version(n2);

int result = v1.CompareTo(v2);

if (result > 0)
{
    //greater than v1
}
else if (result < 0)
{
    //2 is greater
}
else
{
    //they are equal
}