1

如标题。我写了一个简单的计时器,它可以设置时间和日期。时间很好,但日期不行。它显示一年零一天,但不显示月份。为什么 ?

我的代码:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace WindowsFormsApplication_timer
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void timer1_Tick(object sender, EventArgs e)
        {
            int h = DateTime.Now.Hour;
            int m = DateTime.Now.Minute;
            int s = DateTime.Now.Minute;

            int d = DateTime.Now.Day;
            int y = DateTime.Now.Year;
            int t = DateTime.Now.Month;

            label2.Text = DateTime.Now.ToString("dd/tt/yy");

            label1.Text = DateTime.Now.ToString("hh:mm:ss");

        }

        private void button1_Click(object sender, EventArgs e)
        {
            timer1.Start();
        }

        private void label2_Click(object sender, EventArgs e)
        {

        }
    }
}

此代码的结果:

time eg : 11:34:23
date eg : 20--2013

结果必须更改为:

time eg : 11:34:23
date eg : 20/01/2013

你能帮我解决这个问题吗?

4

3 回答 3

2

你应该使用dd/MM/yynot dd/tt/yy

有关详细信息,请参阅自定义日期和时间格式字符串

我还可以看到您有以下行:

int s = DateTime.Now.Minute;

我假设你的意思是:

int s = DateTime.Now.Second;

编辑:

事实上,我看不出有任何理由将日期/时间的任何部分保存在局部变量中,因为它们没有被使用。

于 2013-01-20T10:36:02.443 回答
1

你的DateTime格式不对。试试dd/MM/yy这样的格式;

label2.Text = DateTime.Now.ToString("dd/MM/yy");

查看Custom Date and Time Format Strings更多日期和时间格式信息。

这是一个DEMO.

于 2013-01-20T10:36:50.503 回答
0
label2.Text = DateTime.Now.ToString("dd/MM/yyyy");
于 2013-01-20T10:36:37.293 回答