我现在要拿一个时间日期(2009-3-1)跟一个不同的字符串(200901)比较.急死了!
麻烦的是,首先要取日期的2009-3部分,转换成200903,然后再分成2009 和03 字符串也要分成2009和01,
如果2009部分相等的话,就比较03和01就可以了.
但是这些代码要怎么写啊??!!

解决方案 »

  1.   

    不用那么麻烦,datetime.ToString("yyyyMM");
    然后直接比较字符串就行了.
      

  2.   

    .ToString("yyyyMM")后再判断两个字符串是否相等。
      

  3.   

    datetime.ToString("yyyyMMdd"); 直接拿这个去比较不行么?还分两次干嘛
      

  4.   

    如果格式固定的话非要用字符串比对也不是不行string time_1 = "2009-03";
    string time_2 = "200901";public bool check_time(string t1, string t2)//t1--2009-03;t2--200901
    {
        string[] tmp = t1.split(new char[] { '-' });
        if(tmp[0] != t2.SubString(0,4))
           return fales;//比对不一样
        if(tmp[1] != t2.SubString(4,2))
           return fales;//比对不一样
        return true;//比对一样
    }
      

  5.   

    DateTime d1 = DateTime.ParseExact("0901","yyMM",null);//字符串0901转为日期格式
                if (DateTime.Now > d1)
                { 
                    //todo..
                }
      

  6.   

    前几楼的答案都可行
    DateTime转string的话,直接tostring就行了
      

  7.   

    datetime.ToString("yyyyMM");  然后进行比较
      

  8.   

    例:datetime  dtime 格式为2009-03-01    string strtime 格式: 20090605
    两种比较,一种是字符串比较,一个是时间比较.
    字符串:
    dtime.tostring(yyyy/MM/dd)与strtime直接比.
    个人推荐这种比较方式.楼主所谓的截取后转换什么的,不太好,需要系统开销的.