• .Net之日期比较


    由于在SQL服务器中,可以直接使用日期格式的字符串相互转化可以比较日期,然而在.NET可否直接进行日期比较呢?答案当然是肯定有的。

    见下面代码

    strStartDate = this.dtpStartDate.Value.ToString("yyyy-MM-dd");
    strEndDate
    = this.dtpEndDate.Value.ToString("yyyy-MM-dd");
    //判断起始日期是否大于终止日期
    if (string.CompareOrdinal(strStartDate, strEndDate) > 0)
    {
    MessageBox.Show(
    "终止日期必须[大于]起始日期!","错误提示!",MessageBoxButtons.OK,MessageBoxIcon.Error);
    this.dtpEndDate.Focus();
    return;
    }

    当然主要是把日期数据类型的转换成字符串格进行比较,因为字符串比较主要也是转换成单个字符的比较,当然,这里使用到了string自带的一个比较方法CompareOrdinal()去比较,关于此方法的.NET描述见下,此方法有2个重载函数:

    //
    // 摘要:
    // 通过计算每个字符串中相应 System.Char 对象的数值来比较两个指定的 System.String 对象。
    //
    // 参数:
    // strA:
    // 第一个 System.String。
    //
    // strB:
    // 第二个 System.String。
    //
    // 返回结果:
    // 一个整数,指示两个比较数之间的词法关系。 值 条件 小于零 strA 小于 strB。 零 strA 和 strB 相等。 大于零 strA 大于
    // strB。
    public static int CompareOrdinal(string strA, string strB);
    //
    // 摘要:
    // 通过计算两个指定的 System.String 对象的每个子字符串中相应 System.Char 对象的数值比较子字符串。
    //
    // 参数:
    // strA:
    // 第一个 System.String。
    //
    // indexA:
    // strA 中子字符串的起始索引。
    //
    // strB:
    // 第二个 System.String。
    //
    // indexB:
    // strB 中子字符串的起始索引。
    //
    // length:
    // 要比较的子字符串中字符的最大数量。
    //
    // 返回结果:
    // 一个 32 位有符号整数,指示两个比较数之间的词法关系。 值 条件 小于零 strA 中的子字符串小于 strB 中的子字符串。 零 子字符串相等,或者
    // length 为零。 大于零 strA 中的子字符串大于 strB 中的子字符串。
    //
    // 异常:
    // System.ArgumentOutOfRangeException:
    // indexA 大于 strA。System.String.Length. - 或 - indexB 大于 strB。System.String.Length.
    // - 或 - indexA、indexB 或 length 为负。
    public static int CompareOrdinal(string strA, int indexA, string strB, int indexB, int length);
  • 相关阅读:
    实用SQL命令收集
    ZedGraph在Asp.net中的应用
    怎样制作一张万能的Win XP安装光盘
    【转】poj 1823 hotel 线段树【Good】
    【转】unique()函数
    POJ1389Area of Simple Polygons
    【转】poj 1823
    【转】POJ 1177 (线段树+离散化+扫描线) 详解
    【转】POJ各题算法分类和题目推荐
    【转】sort()函数定义在头文件<algorithm>中,它把容器中的数据重新排序成非递减序列
  • 原文地址:https://www.cnblogs.com/wanzegui325/p/DotNet_DateTimeCompare_01.html
Copyright © 2020-2023  润新知