0

Visual Studio 2008 (C#) を使用して、現在のタイム ゾーンの時間で動作する時計 (デジタル) を作成する必要があり、ニューヨークなどの異なるタイム ゾーンでさらにいくつかの時計を作成する必要があります。

フォーム内に 2 つのラベル (時計用) とタイマーを配置し、タイマー内に次のコードを配置しました。

 timer1.Interval = 1000;

        label1.Text = DateTime.Now.ToLongTimeString();
        DateTime myDateTime = DateTime.Now;


        TimeSpan myTimeSpan = new TimeSpan(2, 0, 0);
        DateTime myDateTime8 = myDateTime + myTimeSpan;
        label2.Text = ("" + myDateTime8);

タイムスパンの部分は時計に2時間を追加しますが、実際の時計の代わりに、次のように残りの日付も取得します。

"2011 年 5 月 17 日 22:38:00"

時間を加算/減算し、時計のみを表示する方法を知る必要があります。

4

4 に答える 4

2

タイムスパンを追加する代わりに、単純に AddHours メソッドを呼び出します。

myDateTime.AddHours(2).ToLongTimeString();
于 2011-05-17T20:25:04.853 に答える
1

myDateTime.ToShortTimeString() は時間のみを返します

または、Tejs前述のようToLongTimeString()に、要件により適していると思われるものを使用できます。

使用できる時間の加算または減算、または減算dateTime.AddHours(even hours in negative)にも使用できますdateTime.Subtract(time to subtract)

于 2011-05-17T20:24:35.513 に答える
0

timespan メソッドの .ToString() メソッドを使用すると、任意の形式で日付を出力できます。http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspxを参照してください

于 2011-05-17T20:26:47.083 に答える
0
  1. タイム ゾーンのニーズに合わせて、この MSDN 記事で提案されている方法と同様の方法を使用してください。特に:
    1. ConvertTimeToUtc演算を実行する前に UTC 時刻を取得するために使用します。
    2. 必要な演算を実行します。
    3. を使用して現地時間に戻しTimeZoneInfo.ConvertTimeます。
  2. の時間部分だけを取得するにはDateTime、 を使用しますDateTime.ToShortTimeString()。これはカルチャに対応しているため、固定形式が必要な場合は、使用DateTime.ToString()して形式を指定することを検討してください。
于 2011-05-17T20:29:32.877 に答える