如题,如果知道了某年的总天数,怎么转换成年月日的格式?
比如,2011年的第341天是2011年的几月几日,
      2012年的第205天呢?C#里面的DateTime.DayOfYear可以直接获得该年的第几天,有没什么方法是可逆的?

解决方案 »

  1.   

                DateTime d = new DateTime(2011, 1, 1);
                d.AddDays(341);
                Response.Write(d.Month);
                Response.Write(d.Day);
      

  2.   


            static string GetDate(int year,int days)
            {
                return Convert.ToDateTime(year + ".01.01").AddDays(days).ToString("yyyy.MM.dd");
            }
    // Console.WriteLine(GetDate(2011,341));   //2011.12.08
      

  3.   

     DateTime dt = new DateTime(2012, 1, 1);
                dt = dt.AddDays(204);//2012-7-23
               int dats = new DateTime(2012, 7, 23).DayOfYear;//205
      

  4.   


    int year = 2012, day = 205;
    DateTime dt = new DateTime(year, 1, 1);
    dt = dt.AddDays(day - 1);
    Console.WriteLine("{0}年第{1}天是{2}月{3}日", year, day, dt.Month, dt.Day);
      

  5.   


    写错了   应该是
                return Convert.ToDateTime(year + ".01.01").AddDays(days-1).ToString("yyyy.MM.dd");
      

  6.   

    忘了还有adddays,谢谢大家,散分
      

  7.   

    MessageBox.Show(DateTime.Parse("2011-1-1").AddDays(365).ToShortDateString());