自己紹介
初めまして、大学一年生のくぅと言います。 C# と Xamarin が好きです。 まだまだ未熟ですが、色々吸収していきます。
やっていくこと
NSDate は CocoaFX 組み込みの日付を簡易してくれるクラスです。
DataTime は .NET/mono の組み込みの日付を管理してくれるクラスです。
DateTime を NSDate に変換していきたいと思います。
やったこと
変換する関数を定義した(拡張メソッドにしてもよかったかも)
ポイント
NSDate の経過時間を図る基準値は 2001年1月1日 です。 ところが、DateTime の経過時間を図る基準値は1年1月1日です。
ということで、DateTime から 2001年1月1日までの経過時間分を引いてやればNSDate と同じ経過時間になるわけです。 最後に、NSDate を秒数から作成する静的関数である FromTimeIntervalSinceReferenceDate にその経過時間を渡してあげると無事に作成されます。
サンプルコード
private NSDate DateTimeToNSData(DateTime datetime) { // NSDate の基準値の2001年1月1日の日付を定義する DateTime reference = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(2001, 1, 1, 0, 0, 0)); // 引数 のDateTime の経過時間の基準値を変えてNSDate と同じようにする return NSDate.FromTimeIntervalSinceReferenceDate((datetime - reference).TotalSeconds); }
まとめ
意外にこの情報は日本語でネットに出てないから困りました 今度は拡張メソッドで定義してみようかな。。。
参考サイト
sourcerer.tumblr.comおすすめ書籍
個人的に読みやすく好きな本たちでした
- 作者: 大田 一希
- 発売日: 2016/12/29
- メディア: Kindle版
- この商品を含むブログを見る
C#によるiOS、Android、Windowsアプリケーション開発入門 (MSDNプログラミングシリーズ)
- 作者: 増田智明,大西彰
- 出版社/メーカー: 日経BP社
- 発売日: 2014/06/04
- メディア: 単行本
- この商品を含むブログを見る
.NET開発テクノロジ入門2016年版Visual Studio 2015対応版
- 作者: 五十嵐祐貴,生形可奈子,大田一希,古賀慎一,酒井達明,芝村達郎,田淵義人,日本マイクロソフト株式会社井上章
- 出版社/メーカー: 日経BP社
- 発売日: 2016/02/05
- メディア: 単行本
- この商品を含むブログ (2件) を見る