String tmpStr = DateTime.Now().toString();
tmpStr = tmpStr.Replace("-", "");
tmpStr = tmpStr.Replace(" ", "");
tmpStr = tmpStr.Replace(":", "");时间格式 2011-01-23 00:00      变成201101230000
我想把它转化成int类型再和int a=201101240000比较大小
int s = Convert.ToInt32(tmpStr)
if(s<a)...错误有——CS0118: “System.DateTime.Now”是“属性”,但此处被当做“方法”来使用,可能还有其他错误,帮忙解决下

解决方案 »

  1.   

    int i = Convert.ToInt32(DateTime.Noe.ToString("yyyyMMddHHmm"));
      

  2.   

    DateTime.Now.toString("yyyyMMddHHmmss");
      

  3.   

    有一个属性叫做Ticks时间用长整型 来表示,这样比大小,很直观
      

  4.   

    Convert.ToInt32(DateTime.Now.ToString("yyyyMMddHHmm"))
      

  5.   

    出错咧——System.OverflowException: 值对于 Int32 太大或太小。是不是int32太小,换int64?大小怎么判断的?
      

  6.   

    Ticks属性是long型...另外,DateTime类型可以直接比较大小你转来转去的烦不烦...
      

  7.   

    DateTime-DateTime=TimeSpanTimeSpan里面就有两个时间的差的数据了,具体可以看一下MSDN
      

  8.   

    BigInteger 代表一个任意大的整数
      

  9.   

    DateTime dt1 = DateTime.Now;
                Thread.Sleep(2000);
                DateTime dt2 = DateTime.Now;
                TimeSpan ts1 = dt2.Subtract(dt1);
                if (ts1.TotalMilliseconds > 0)
                {
                    Console.WriteLine("dt2 is lagre than dt1");
                }
                else
                {
                    Console.WriteLine("dt2 is small than dt1");            }
      

  10.   

    DateTime直接可以比大小,勿须转。
      

  11.   

    那你转成UNIX时间格式来比较好了,1970年1月1日到现在的秒数,值越大时间越大.
    代码/// <summary>
            /// 将c# DateTime时间格式转换为Unix时间戳格式
            /// </summary>
            /// <param name="time">时间</param>
            /// <returns>double</returns>
            public static int ConvertDateTimeInt(System.DateTime time)
            {
                int intResult = 0;
                System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1));
                intResult = (int)(time - startTime).TotalSeconds;
                return intResult;
            }
      

  12.   

    EXCEL的日期是一数,你也可以参考一下,这样表示出来的日期比较小
      

  13.   


    long s = Convert.ToInt64(DateTime.Now.ToString("yyyyMMddHHmm"));
      

  14.   

    运行下面的代码,你会发现什么?Console.WriteLine(DateTime.Parse("2011-1-1 00:00:00.0").ToOADate());
    Console.WriteLine(DateTime.Parse("2011-1-1 12:00:00.000").ToOADate());
    Console.WriteLine(DateTime.Parse("2011-1-1 23:59:59.999").ToOADate());Console.WriteLine(DateTime.Parse("2011-1-1 00:00:00.0").ToOADate());
    Console.WriteLine(DateTime.Parse("2011-1-1 00:00:00.001").ToOADate());Console.WriteLine(DateTime.Parse("2011-1-2 00:00:00.0").ToOADate());
      

  15.   

    时间可直接比较大小,如果一定要转,建议用20#的方法,ToOADate();
    很多组件厂商的绘图控件中,对于时间值的处理,都是转成OADate,再去绘制时间曲线.
      

  16.   

    http://topic.csdn.net/u/20100812/14/5eff3a8e-32ec-4804-bf30-94c6211a6fe9.html?22202