たとえば現在日時を取得し、時間だけ変えたいという時はこんな書き方ができます。
Dim dt As DateTime = DateTime.Now() Console.WriteLine(dt.ToString()) dt = DateTime.Parse(dt.ToString("yyyy/MM/dd 12:01:00")) Console.WriteLine(dt.ToString()) '結果: '2008/05/20 10:26:00 '2008/05/20 12:01:00
で、上の例ではDateTime.Parse()を使ってますが、ここ見たところDateTime.ParseExact()を使ったほうがよさげなので、こうしました。
Dim dt As DateTime = DateTime.Today() Console.WriteLine(dt.ToString()) dt = DateTime.ParseExact(dt.ToString("yyyy/MM/dd 12:01:00"), "yyyy/MM/dd HH:mm:ss", Nothing) Console.WriteLine(dt.ToString()) '結果: '2008/05/20 10:26:00 '2008/05/20 12:01:00
ちなみに.NetではDateとDateTimeは同じものみたいです。 DateはVB6との互換性だけに残しているようなものみたいすね。