2011-10-20 12 views
0

私はDelphi Prism for .NETを使用しています。私はDateTime値を取って日付と時間を分けることができる必要があります。私はFrac関数を使ってWin32 Delphiでそれを行うことができます。私は.NETに似た何かを見つけることができません。あなたは何かが存在するかどうか知っていますか?DateTimeパラメータを取るメソッドまたは関数Fracの代わりに.NETに?

私は自分のFracメソッドを.NET用に書きましたが、DoubleやDecimalの値はDateTimeでなくてもかまいません。 .NETはDateTime値をFloatまたはDecimalとして扱わないようです。本当?それが本当であれば、私のFracメソッドは動作しません。

method Frac(theValue:Double):Double; 
begin 
    result := (theValue-math.Truncate(theValue)); 
end; 

私は時間形式に設定DateTimePickerのを持っているし、値を取得し、それをdatetime型の変数を設定するだけで時間がない日にしたいです。

ありがとうございました。

+0

@ChrisShoutsはいそうです。それじゃない?だからこそ私はStackoverflowに質問を投稿しなければならなかった。 :) Win32のDelphi DateTimeは自動的に大きなfloatまたは10進数に変換されます。日付は整数で、小数点は時間です。さて、.NETの日付と時刻の処理については、私のプログラムを別に書く必要があると思います。 – ThN

答えて

2

DateTime.DateDateTime.TimeOfDayに問題がありますか?

(...実際には、答えはyes, there is quite a lot wrong with DateTimeですが、それは別の問題です...もちろん、あなたがデルファイからNoda Timeを使用することに興味があるなら、私はあなたからの聴取に非常に興味があると思い)

+0

@ Jon、TimeOfDayはTimeSpanタイプのもので、実際の時刻は午前11時03分ではありません。私のプログラムは、DateTime値のDate部分を本当に気にしません。 – ThN

+0

@ digitalanalog:あなたはいつでもそれを任意の日付に追加できます。ポイントは、これらの2つのプロパティが日付を時間から分割することです。あなたのコードが日付部分を気にしないなら、それが何であるかは重要ですか?それが何であるかは関係ありませんが、どうしてそれを分割する必要がありますか? –

+0

@ Jon、True。私は日付を無視することができます。では、DateTimePickerから実際の時刻を設定または取得する方法は? – ThN