怎么比较x.x.x与x.x.x的值

z779150119 2013-09-12 03:02:03
比如2.5.1和3.4.9怎么比较他们,分不多了只有这么点了
...全文
613 75 打赏 收藏 转发到动态 举报
写回复
用AI写文章
75 条回复
切换为时间正序
请发表友善的回复…
发表回复
z779150119 2013-09-16
  • 打赏
  • 举报
回复
感谢 subxli 帮我解决了,下面是代码,贴出来与大家分享
   private void ShowCopyRight()
        {
            string strv1 = clVersionNo;
            string strv2 = seVersionNo;
            int nv1 = int.Parse(strv1.Replace(".", ""));
            int nv2 = int.Parse(strv2.Replace(".", ""));

            List<string> strList = new List<string>();
            for (int i = nv1+1; i < nv2+1; i++)
            {
                //从客户端的版本号开始拼接
                string Result = i.ToString();
                Result = Result.Insert(1, ".").Insert(3, ".");

                strList.Add(Result);
            }
            XmlDocument xmlDoc = new XmlDocument();
            url = ServerPath.Substring(0, ServerPath.LastIndexOf("\\"));
            xmlDoc.Load(url + "\\UpdateList.xml");

            XmlNodeList xList = xmlDoc.GetElementsByTagName("App");

            
            foreach (string item in strList)
            {
                foreach (XmlNode xNode in xList)
                {
                    string RemoteName = xNode.Attributes["Version"].Value;
                    if (item.Contains(RemoteName))
                    {
                        tbx_txt.Text += "更新至:" + RemoteName + "\r\n" + xNode.InnerText.ToString().Trim().Replace(" ", "") + "\r\n\r\n";
                    }
                }
            }
        }
z779150119 2013-09-16
  • 打赏
  • 举报
回复
没什么太大的用,还是我自己解决吧
PaulyJiang 2013-09-13
  • 打赏
  • 举报
回复
if (newVersion.CompareTo(oldVersion) != 1)// 旧版本号 不小于 新版本号 不需要更新
PaulyJiang 2013-09-13
  • 打赏
  • 举报
回复
Compare
handsomekyle 2013-09-13
  • 打赏
  • 举报
回复
应该是比较版本号吧。 直接从前端开始截取,一位一位地比不就好了么
hudsonhuang 2013-09-12
  • 打赏
  • 举报
回复
version类
逍遥jc 2013-09-12
  • 打赏
  • 举报
回复
遍历数据库不行么?难道存数据的时候不是按照顺序存的而是乱序?根据起始的版本号找到起始ID,然后再根据终止的版本号找到终止ID,然后遍历下两个ID之间的版本信息不就好了。
  • 打赏
  • 举报
回复
楼主…至于怎么对比相差数楼上的前辈们都教你方法了,至于你要把这相差的版本信心显示出来 你要知道的信息都知道了还不会换位思考吗? 假设 开始版本号 231 结束版本号 234 234-231=3 相差了3个版本 直接用开始版本号+1不就得出232版本号了么?会减了难道不会加?
  • 打赏
  • 举报
回复
if(new Version("2.03.50").CompareTo(new Version("3.4.5")) < 0) 需要升级
  • 打赏
  • 举报
回复
我的是java写法 C#应该类似的 split();返回的是数组
  • 打赏
  • 举报
回复
1楼说的很对啊 String s[] = "1.2.3".split("."); 然后s[0]是1 s[1]是2 s[2]是3 剩下的你就自己比较了啊。
颤菊大师 2013-09-12
  • 打赏
  • 举报
回复
 Version v1 = new Version("3.3.3");
            Version v2 = new Version("3.3.2");
            if(v1 > v2)
            {

            }
这样?
z779150119 2013-09-12
  • 打赏
  • 举报
回复
各位,抱歉啊,这几天有事,所以可能上不了csdn,如果谁有解决方案了,请把方案放在上面。再说一次我的需要:从2.5.1更新到2.5.9,怎么从2.5.1开始把这中间的8个信息都显示出来,中间隔了多少个版本就显示多少个信息。然后更新的信息存在xml文件中的 <?xml version="1.0" encoding="gb2312"?> <AutoUpdate> <App Version="2.5.6" > <Description> 1.增加打印菜单 2.修复了BUG 3.发发阿达 4.个顶个我 </Description> </App> <App Version="2.5.5" > <Description> 1.增加打印菜单 2.修复了BUG 3.发发阿达 4.个顶个我 </Description> </App> </AutoUpdate> 要显示成 : 更新至v2.5.2 1.增加了... 2.修复了... 更新至v2.5.2 2.增加了... 2.修复了... ................ 更新至v2.5.2 9.增加了... 2.修复了... 计算出2.5.1到2.5.9我会,我不会的是,如何从2.5.1开始吧2.5.5-2.5.9的信息显示出来
z779150119 2013-09-12
  • 打赏
  • 举报
回复
引用 59 楼 china_jeffery 的回复:
[quote=引用 54 楼 z779150119 的回复:] [quote=引用 51 楼 china_jeffery 的回复:] [quote=引用 2 楼 q107770540 的回复:] 直接去掉. 变成整数对比呢
我认为这位大神说的很不错[/quote]这样子是可以啊,但我的需要是,比如我从2.5.1更新到2.5.9,怎么从2.5.1开始把这中间的8个信息都显示出来,中间隔了多少个版本就显示多少个信息。然后更新的信息存在xml文件中的 <?xml version="1.0" encoding="gb2312"?> <AutoUpdate> <App Version="2.5.6" > <Description> 1.增加打印菜单 2.修复了BUG 3.发发阿达 4.个顶个我 </Description> </App> <App Version="2.5.5" > <Description> 1.增加打印菜单 2.修复了BUG 3.发发阿达 4.个顶个我 </Description> </App> </AutoUpdate> 要显示成 : 更新至v2.5.2 1.增加了... 2.修复了... 更新至v2.5.2 2.增加了... 2.修复了... ................ 更新至v2.5.2 9.增加了... 2.修复了...[/quote] 这个要看你版本的递增的规则了,如果是连续的那就是1-9呀 感觉你没说清楚你的意思。。。[/quote] 是连续的啊,我说了何止一遍,自己不去看上面的消息,那如何弄呢
z779150119 2013-09-12
  • 打赏
  • 举报
回复
引用 56 楼 wanghui0380 的回复:
1.微软有version类 2.如果达不到你的要求,请展开你的联想,告诉我ip地址是怎么被转换成long滴。 ps:想法有问题滴,版本更新不一定是连续滴,所以想根据这个去提示消息不靠谱,假设你直更新一个大版本,那么你想提示什么“是一个提示,还是999个小版本提示”
微软的version类没用,ip地址如何转换成Long?去数据库读取的啊,请看一下我楼上发的需求
china_jeffery 2013-09-12
  • 打赏
  • 举报
回复
引用 54 楼 z779150119 的回复:
[quote=引用 51 楼 china_jeffery 的回复:] [quote=引用 2 楼 q107770540 的回复:] 直接去掉. 变成整数对比呢
我认为这位大神说的很不错[/quote]这样子是可以啊,但我的需要是,比如我从2.5.1更新到2.5.9,怎么从2.5.1开始把这中间的8个信息都显示出来,中间隔了多少个版本就显示多少个信息。然后更新的信息存在xml文件中的 <?xml version="1.0" encoding="gb2312"?> <AutoUpdate> <App Version="2.5.6" > <Description> 1.增加打印菜单 2.修复了BUG 3.发发阿达 4.个顶个我 </Description> </App> <App Version="2.5.5" > <Description> 1.增加打印菜单 2.修复了BUG 3.发发阿达 4.个顶个我 </Description> </App> </AutoUpdate> 要显示成 : 更新至v2.5.2 1.增加了... 2.修复了... 更新至v2.5.2 2.增加了... 2.修复了... ................ 更新至v2.5.2 9.增加了... 2.修复了...[/quote] 这个要看你版本的递增的规则了,如果是连续的那就是1-9呀 感觉你没说清楚你的意思。。。
智商余额不足 2013-09-12
  • 打赏
  • 举报
回复
代码是根据你的连续版本号写的,连续
智商余额不足 2013-09-12
  • 打赏
  • 举报
回复

static void Main(string[] args)
{
     string version1 = "2.5.1";
     string version2 = "2.5.9";
     int version1Int = int.Parse(version1.Replace(".", ""));
     int version2Int = int.Parse(version2.Replace(".", ""));
     for (int i = version1Int; i <= version2Int; i++)
     {
          string temp = i.ToString();
          string formatVersion = string.Format
               (
                    "{0}.{1}.{2}",
                    temp.Remove(temp.Length - 2),
                    temp[temp.Length - 2],
                    temp[temp.Length - 1]
               );
          Console.WriteLine(formatVersion);
      }
}
wanghui0380 2013-09-12
  • 打赏
  • 举报
回复
1.微软有version类 2.如果达不到你的要求,请展开你的联想,告诉我ip地址是怎么被转换成long滴。 ps:想法有问题滴,版本更新不一定是连续滴,所以想根据这个去提示消息不靠谱,假设你直更新一个大版本,那么你想提示什么“是一个提示,还是999个小版本提示”
z779150119 2013-09-12
  • 打赏
  • 举报
回复
引用 53 楼 zh1223ch 的回复:
你数据库怎么存的版本号?2.5.1更新成3.6.8 可能2.5.8之后直接3.1.1了呢,这没法算。你就直接遍历你存版本号的数据库。在数据库中设置个标识列,专门用来用来表示版本先后顺序的。
木有数据库的,数据库放的是别的信息
加载更多回复(54)
免费试听地址:B站搜索JeeGit观看《JeeSite4.x数据权限教程》、《JeeSite1.2.7系列基础教程》、《JeeSite4.x系列基础教程》等相关课程! 郑重声明:购课前,请认真听完第一章 课程简介 建议实战人群直接听:第九章、第十章 学生人群、刚入门:全听       数据权限主要讲解内容包含第一章 课程简介31.1 课程目标31.2 适用人群31.3 课程简介31.4 环境要求31.5 课程知识点大全31.6 课程售价31.7 购课声明31.8 资源清单31.9 售后方式41.10 讲师介绍4第二章 权限基础42.1 权限模型概述4第三章 JeeSite权限管理模型123.1 JeeSite1.2.7 权限管理模型123.2 JeeSite4.x 权限管理模型123.3 JeeSite4.x权限设计的扩展13第四章 用户管理144.1 JeeSite4.x内置用户类型144.1.1 用户管理思路144.1.2 网站会员、员工、单位、个人登录视图配置154.2 用户数据权限类型164.3实战训练、调试、日志查看16第五章 机构管理16第六章 角色管理186.1 JeeSite4.x角色管理概述186.2 JeeSite4.x越级授权与菜单权重186.3 JeeSite4.x 越级授权可能存在的隐患极其解决方案196.4用户表如何区分非管理员、系统管理员、二级管理员206.5 角色权限注意事项206.6 角色授权数据范围使用注意事项216.7 为何用户不设置员工权限无效?236.8 岗位管理与角色分类的岗位分类与角色分类有何区别?23第七章 二级管理员23第八章 系统管理员238.1 系统管理员238.2 总结:何时使用超级管理员、系统管理员、二级管理员?23第九章 Jeesite数据权限调用239.1 JeeSite4.x数据调用基础239.2 JeeSite4.x 实现数据列权限推荐解决方案249.3多数源模式下数据权限bug简易解决方案249.4 JeeSite4.x 自定义扩展数据权限249.5支持全球地区、全球企业、全球机构、全球部门授权24第十章 JeeSite数据权限实战2410.1 案例一2410.2 案例二2410.3 案例三2510.4 案例四2510.5 案例五25第十一章 JeeSite4.x常见问题解答251.1数据权限管理的代码会公开吗,购买了能看吗?251.2 JeeSite数据权限教程是Thinkgem录制的吗?25第十二章 参考阅读2612.1、JeeSite官方文档2712.2、美国国家标准与技术研究院2712.3、中国国家标准化管理委员会2712.4、ITSEC欧洲安全评价标准2812.5、百度学术2812.6、开源框架2912.6.1 JeeSite2912.6.2 Casbin2912.6.3 Eladmin2912.6.4 Spring-boot-demo2912.6.5 Jeeplatform3012.6.6 Pig3012.6.7 Jeecg-boot3012.6.8 Jfinal3012.6.9 Guns3112.6.10 Zheng3112.6.11 Cloud-Platform3112.7 博文资源31

110,531

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧