読者です 読者をやめる 読者になる 読者になる

酢ろぐ!

カレーが嫌いなスマートフォンアプリプログラマのブログ。

Xamarin.iOSでNSDate型とDateTime型とを相互に変換する

iPhone Xamarin

.NET FrameworkでのDateTime型をXamarin.iOSでのNSDate型に変換、または逆にNSDate型をDateTime型に変換してみましょう。

NSDate型をDateTime型に変換する

public DateTime NSDateToDateTime(NSDate date)
{
    var baseDate = new DateTime(2001, 1, 1, 0, 0, 0, DateTimeKind.Utc);
    return baseDate.AddSeconds(date.SecondsSinceReferenceDate);
}

DateTime型をNSDate型に変換する

public NSDate DateTimeToNSDate(System.DateTime date)
{
    var baseDate = new DateTime(2001, 1, 1, 0, 0, 0, DateTimeKind.Utc);
    var span = date.Subtract(baseDate).TotalSeconds;
    return NSDate.FromTimeIntervalSinceReferenceDate(span);
}

関連記事

Xamarin.iOSを使ってアプリ開発する際に逆引きとしてお使いください。