获取当前时间然后递增它?

Dav*_*wer 0 c# winforms

当前项目:使用两个类在C#中创建时间程序Time和ExtendedTime Time只是正常时间,而ExtendedTime具有时区.

当你启动程序时,我需要单击一个按钮并获取当前时间,但有一个选项可以更改时区.这反过来又改变了时间,并且还可以选择将时间增加这么多小时或几分钟.

目前,这是我的Time类中的displayTime方法:

public virtual string displayTime()
{
    DateTime time = DateTime.Now; // Use current time
    string format = "MMM ddd d HH:mm yyyy"; // Use this format
    MessageBox.Show(time.ToString(format)); // Write to console

    return time.ToString(format);
}//end of displayTime
Run Code Online (Sandbox Code Playgroud)

哪个也不错,除非我每次都称之为无关紧要因为它总会告诉我当前的时间 DateTime.Now

我不完全确定如何解决这个问题.我确信我可以做一次性交易,但不确定语法.

GWL*_*osa 5

您可以使用TimeSpan类来操作DateTime类.例如:

 DateTime now = DateTime.Now;
 DateTime twoHoursLater = now + new TimeSpan(2,0,0);
 DateTime twoDaysLater = now + new TimeSpan(2,0,0,0);
Run Code Online (Sandbox Code Playgroud)

如果您使用的是用户提供的时间,例如文本框中的时间,则可以使用

 DateTime userSuppliedTime = DateTime.Parse(myTextbox.Text);
Run Code Online (Sandbox Code Playgroud)

这将为您提供与用户输入的内容相对应的DateTime.但是,请注意,如果用户键入系统无法识别为有效的内容,则会引发异常.