「Xamarin.MacのNSDateとDateTimeを相互変換する」の版間の差分

提供:MonoBook
imported>Administrator
ページの作成:「Xamarin公式サイトのフォーラムにあった。 * https://forums.xamarin.com/discussion/27184/convert-nsdate-to-datetime <source lang="csharp"> public static...」
 
imported>Administrator
編集の要約なし
22行目: 22行目:
     }
     }
</source>
</source>
== 関連項目 ==
* [[Xamarin.Mac/NSDateクラス]]


[[category: Xamarin.Mac]]
[[category: Xamarin.Mac]]
[[category: Xamarin.iOS]]
[[category: Xamarin.iOS]]

2017年10月31日 (火) 08:53時点における版

Xamarin公式サイトのフォーラムにあった。

    public static class NSDateExtensions
    {
        static readonly DateTime reference = new DateTime(2001, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc);

        public static DateTime ToDateTime(this NSDate date)
        {
            var utcDateTime = reference.AddSeconds(date.SecondsSinceReferenceDate);
            var dateTime = utcDateTime.ToLocalTime();
            return dateTime;
        }

        public static NSDate ToNSDate(this DateTime datetime)
        {
            var utcDateTime = datetime.ToUniversalTime();
            var date = NSDate.FromTimeIntervalSinceReferenceDate((utcDateTime - reference).TotalSeconds);
            return date;
        }
    }

関連項目