c# 日期和时间的获取

 

在开发网站的过程中,如开发新闻网站、论坛、聊天室等,都需要获取当前系统日期,本实例介绍如何获取系统日期并将系统日期用不同的格式显示出来。实例运行结果如图7.1所示。

获取当前系统日期并将其转化为短日期格式的代码如下:

Label1.Text = System.DateTime.Now.ToShortDateString();

获取当前系统日期并将其转化为长日期格式的代码如下:

Label2.Text = System.DateTime.Now.ToLongDateString();

 注意:DateTime对象中的Now属性可以用DateTime对象中的Today属性代替,DataTime.Now属性与DataTime.Today属性都是用来获取当前系统时间的。

在开发游戏类网站时,往往需要将玩家的闯关时间记录下来,设立排行榜,增强游戏的趣味性。本实例将会介绍如何获取当前系统时间并将其格式化。实例运行结果如图7.2所示。

获取当前系统时间并将其转化为短时间格式的代码如下:

Label1.Text = System.DateTime.Now.ToShortTimeString();

获取当前系统日期并将其转化为长日期格式的代码如下:

Label2.Text = System.DateTime.Now.ToLongTimeString();

一些网站的首页会将当前系统日期和时间都显示出来,以美化网站。本实例介绍如何同时获得系统当前日期和时间。实例运行结果如图7.3所示。

同时获得系统当前日期和时间的代码如下:

  Label1.Text = DateTime.Now.ToString();

在本实例中,主要实现的是使用DateTime结构的DayofWeek属性来获取当前日期是星期几,并将返回指定日期是星期几的英文单词转化为相应的汉字。代码如下:

public static string dt;

    public static string week;

    protected void Button1_Click(object sender, EventArgs e)

    {

        //获取当前日期是星期几

        dt = DateTime.Today.DayOfWeek.ToString();

        //根据取得的英文单词返回汉字

        switch (dt)

        {

            case "Monday":

                week ="星期一";

                break ;

            case "Tuesday":

                week = "星期二";

                break;

            case "Wednesday":

                week = "星期三";

                break;

            case "Thursday":

                week = "星期四";

                break;

            case "Friday":

                week = "星期五";

                break;

            case "Saturday":

                week = "星期六";

                break;

            case "Sunday":

                week = "星期日";

                break;

        }

        //利用TextBox文本框显示当前日其为星期几

        TextBox1.Text = week;

    }

}

本实例主要是获取指定年份中的天数,首先使用DateTime结构的Year属性来取得年份,然后根据DateTime结构的IsLeapYear方法来判断取得年份是否为闰年,如果为闰年,则显示“366天”,否则显示“365天”。代码如下:

protected void Button1_Click(object sender, EventArgs e)

    {

        //判断是否是闰年

        if (DateTime.IsLeapYear(Convert.ToInt32(DateTime.Now.Year.ToString())))

            {

                //如果是闰年

                TextBox1.Text = "366";

            }

            else

            {

                //如果不是闰年

                TextBox1.Text = "365";    

            }

    }

本实例主要获取当前月的天数,使用DateTime结构的Year和Month属性取得当前日期所在的年和月,然后在switch语句中根据不同的年份和月份返回指定月份的天数。代码如下:

public static int year;

    public static int month;

    public static int days;

    protected void Button1_Click(object sender, EventArgs e)

    {

        year = DateTime.Now.Year;

        month = DateTime.Now.Month;

        //得到当前月的天数

        switch (month)

        {

            case 1:

                days = 31;

                break;

            case 2:

                if (DateTime.IsLeapYear(year))

                {

                    //闰年二月为29天

                    days = 29;

                }

                else

                {

                    //不是闰年,二月为28天

                    days = 28;

                }

                break;

            case 3:

                days = 31;

                break;

            case 4:

                days = 30;

                break;

            case 5:

                days = 31;

                break;

            case 6:

                days = 30;

                break;

            case 7:

                days = 31;

                break;

            case 8:

                days = 31;

                break;

            case 9:

                days = 30;

                break;

            case 10:

                days = 31;

                break;

            case 11:

                days = 30;

                break;

            case 12:

                days = 31;

                break;

        }

        TextBox1.Text = days.ToString();

    }

本实例主要实现“取得当前日期的前一天”功能,使用了DateTime结构的AddDays方法,在指定的DateTime实例的值上加上“-1”天取得所要的结果。代码如下:

protected void Button1_Click(object sender, EventArgs e)

    {

        TextBox1.Text = DateTime.Now.AddDays(-1).ToString();

    }

在DataTime结构中,与AddDays方法实现功能相类似的方法如表7.1所示。

表7.1                                            将日期格式化为指定格式常用方法

方 法 名 称

说    明

Add

将指定的TimeSpan的值加到实例的值上

AddHours

将指定的小时数加到实例的值上

AddMilliseconds

将指定的毫秒数加到实例的值上

AddMinutes

将指定的分钟数加到实例的值上

AddMonths

将指定的月份数加到实例的值上

AddSeconds

将指定的秒数加到实例的值上

AddYears

将指定的年份加到实例的值上

TimeSpan对象表示时间间隔或持续时间,按正负天数、小时数、分钟数、秒数以及秒的小数部分进行度量。在本实例中,首先定义了两个时间dateTime1和dateTime2,并分别为其赋值,然后定义了一个TimeSpan对象,并将dateTime1和dateTime2之间的时间间隔赋给TimeSpan对象。代码如下:

   DateTime dateTime1 = DateTime.Parse(DateTime.Now.AddSeconds(30).ToString());

   DateTime dateTime2 = DateTime.Parse(DateTime.Now.ToString());

   TimeSpan timeSpan = dateTime1 - dateTime2;

   TextBox1.Text =timeSpan.ToString();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值