DateTime
インスタンスをTimeSpan
インスタンスに変換したいのですか?DateTimeをTimeSpanに変換する
私は周りを見回しましたが、私が欲しいものを見つけることができませんでした。私は時差だけを見つけます。具体的には、DateTime
インスタンスをミリ秒に変換して、IsolatedStorageに保存したいとします。
DateTime
インスタンスをTimeSpan
インスタンスに変換したいのですか?DateTimeをTimeSpanに変換する
私は周りを見回しましたが、私が欲しいものを見つけることができませんでした。私は時差だけを見つけます。具体的には、DateTime
インスタンスをミリ秒に変換して、IsolatedStorageに保存したいとします。
DateTime
をTimeSpan
に変換するには、基準日時を選択する必要があります。 2000年1月1日の深夜になり、DateTime
の値から減算します(また、DateTime
に変換する場合は追加します)。
DateTime
を数字に変換するだけの場合は、Ticks
プロパティを使用できます。
タイムスパンピッカーとしてWPFとXceedのTimePicker(これはDateTime?を使用しているようです)を使用している場合は、今のように、ミリ秒(またはTimeSpan)
var milliseconds = DateTimeToTimeSpan(timePicker.Value).TotalMilliseconds;
TimeSpan DateTimeToTimeSpan(DateTime? ts)
{
if (!ts.HasValue) return TimeSpan.Zero;
else return new TimeSpan(0, ts.Value.Hour, ts.Value.Minute, ts.Value.Second, ts.Value.Millisecond);
}
XAML:
<Xceed:TimePicker x:Name="timePicker" Format="Custom" FormatString="H'h 'm'm 's's'" />
ない場合、私はそれをも考慮に '日' をとるかdateTime.Substract(DateTime.MinValue).TotalMilliseconds
のようなSTHを行うように、あなただけ)(私のDateTimeToTimeSpanを調整することができると思います。
TimeSpan.FromTicks(DateTime.Now.Ticks)
あなただけのTimeSpan型で日付時刻のTIMEOFDAYプロパティ、使用することができます。http://msdn.microsoft.com/en-us/library/system.datetime.timeofday(v=vs.110).aspx
これははるかに良い答え、ありがとうございます。 – Jeremy
DateTime.Now.TimeOfDay || DateTime.Today.TimeOfDay – espaciomore
「DateTime myDateTime = DateTime.UtcNow;」や、「DateTime」*の特定のインスタンスに何かを得るために使用すると、** myDateTime .TimeOfDay; '**。代わりに、あなたは仲介人を切り抜けて、** 'DateTime.UtcNow.TimeOfDay' **、natchと言うことができます。 (つまり、現在のサンプルコードである 'DateTime.TimeOfDay'は' invalid 'です。 'DateTime.UtcNow'と同じように値を与えません。これは意味があります。その 'TimeOfDay'値を取得してください。) – ruffin
DateTime.TimeOfDay
このプロパティは、.NET 1.1
詳しい情報以来の周りされているが
次のコードを試してください。
変数をTimeSpan
に割り当てます。
DateTime.TimeOfDayはより良い –
です。 'TimeOfDay'はTimeだけであり、' TimeSpan'に現在の日付は含まれません。 – KoalaBear