2011-01-28 18 views
0

現在のプロジェクト:C#で2つのクラスを使用してタイムプログラムを作成するTimeとExtendedTime Timeは通常の時間にすぎず、ExtendedTimeにはタイムゾーンがあります。現在の時間を取得してからそれをインクリメントしますか?

プログラムを起動すると、ボタンをクリックして現在の時刻を取得する必要がありますが、タイムゾーンを変更するオプションがあります。これにより、時間が変更され、時間を数時間または数分増やすオプションもあります。

現在のところ、これは時間のクラスでの私のdisplayTime方法は、次のようになります。私はどんなにそれは常にための私の現在の時刻を教えてくれますWHATそれを呼び出すないこと毎回除いて悪いわけではない

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 

DateTime.Now

私はそれを回避する方法について完全には分かりません。私はこれを行うためにできる一回の取引があると確信していますが、構文が不明です。

+6

C#(.net以外)は何を意味していますか? –

+2

@Shan:私はそれが "新しい男"を意味すると確信しています。 OPはおそらく "C#(asp.netではない)"を意味する – NotMe

+0

LOLありがとう。 :Pええ、私はちょうどC#を意味します。誰かが私が最後にC#を投稿したときに私を誤解していたので、先を考えようとしました。 :P –

答えて

5

DateTimeクラスを操作するには、TimeSpanクラスを使用できます。たとえば:あなたは、このようなテキストボックスから一つとして、ユーザー提供の時間を使用している場合

DateTime now = DateTime.Now; 
DateTime twoHoursLater = now + new TimeSpan(2,0,0); 
DateTime twoDaysLater = now + new TimeSpan(2,0,0,0); 

、あなたはあなたにどのようなユーザーに対応する日時を与える

DateTime userSuppliedTime = DateTime.Parse(myTextbox.Text); 

を使用することができます入ります。しかし、ユーザがシステムが有効と認識しないものを入力すると、例外がスローされることに注意してください。

+0

私はそれが動作するが、現在の時刻を変更するためにtxtボックスからの値を使用して見ることができます。このようにしていますか?タイムゾーンも同様です。 –

+0

また、私は2つのテキストボックスを1つ分分、1つを数時間使用しているので、どのように両方のボックスを解析できますか? –

+0

たとえば、次のようにテキストボックス文字列を組み合わせることができます。DateTime.Parse(myTextboxHours.Text + ":" + myTextboxMinutes.Text); – GWLlosa

1

DateTimeフィールドを操作するコードがなくなると、現在の時刻になります。

タイムゾーンを適用するには、TimeZoneInfoクラスを調べます。

0

実際にはDateTimeOffset構造を使用する必要があります。この構造はこの種のものに適しています。

関連する問題