2012-04-27 17 views
2

2つのDateTime変数があります。C#で2つのDateTime変数を1つにマージする

One is: DateTime date //this format is yyyymmdd 
Second is: DateTime time // this format is hhmmtt (hour:min:tt) 

どうすればこれらを組み合わせることができますか? 1つのDateTime変数を生成します。

答えて

5
var output = new DateTime(date.Year, date.Month, date.Day, 
          time.Hour, time.Minute, time.Second); 

1日付で、もう1つは時間であるけれども、あなたがリストされている2つの日付でしか動作、。

1

DateTimeのいずれかをTimeSpanに変換し、2番目のDateTimeに追加する必要があります。時間はDateTimeにしてください。そのGetTicksメソッドを使用して、TimeSpanコンストラクタに渡すことができます。

0
DateTime day; //assumed set with the correct date 
DateTime time; //assumed set with the relevant hour, minute, second 

DateTime all = day.Date.Add(new TimeSpan(time.Hour, time.Minute, time.Second)); 
+0

このような 'TimeSpan'オブジェクトを作成するのではなく、' time.TimeOfDay'を使うことができます。 –

0
DateTime date = new DateTime(2012,12,04); 
DateTime time = new DateTime(1,1,1,11,20,30); 
DateTime combined = date.AddSeconds(TimeSpan.Parse(time.ToShortTimeString()).TotalSeconds); 

Console.WriteLine(date); 
Console.WriteLine(time); 
Console.WriteLine(combined); 

04.12.2012 00:00:00 
01.01.0001 11:20:30 
04.12.2012 11:20:00 
関連する問題