C#比较版本号新旧函数

private bool CompareVersion(string oldver, string newver)
{
    bool result = false;
    //1.拆分
    string[] arroldver = oldver.Split(new string[] { "." }, StringSplitOptions.None);
    string[] arrnewver = newver.Split(new string[] { "." }, StringSplitOptions.None);
    //2.转换、补位
    List<int> lstoldver = new List<int>();
    List<int> lstnewver = new List<int>();
    int lenth = arroldver.Length > arrnewver.Length ? arroldver.Length : arrnewver.Length;
    for (int i = 0; i < lenth; i++)
    {
        lstoldver.Add(i < arroldver.Length ? int.Parse(arroldver[i]) : 0);
        lstnewver.Add(i < arrnewver.Length ? int.Parse(arrnewver[i]) : 0);
    }
    //3.比较
    for (int i = 0; i < lstoldver.Count; i++)
    {
        if (lstoldver[i] == lstnewver[i])
        {
            continue;
        }
        else if (lstoldver[i] < lstnewver[i])
        {
            result = true;
            break;
        }
        else
        {
            result = false;
            break;
        }
    }
    return result;
}


评论: 0 | 引用: 0 | 查看次数: 3686
发表评论
登录后再发表评论!