Objective-CでJSONの日付(ティック)をNSDateに変換する方法を知っている人はいますか?誰かがコードを投稿できますか?JSONの日付(ティック)をNSDateに変換する
答えて
ここでは推測していますが、JSON値は1970年以降のミリ秒数です。 NSDateのdateWithTimeIntervalSince1970:
メソッドを使用すると、正しい時刻のNSDateオブジェクトを返すことができます。 NSDateに渡す前にJSONのミリ秒数を秒に変換してください.Cocoaはほとんどの場所でNSTimeIntervalを使用します(秒単位の間隔です)。
クライアントのロケールを検出できるようにする必要があります。クライアントがその方法を知っていなければ、あまり意味がありません。
NSDateのdescriptionWithLocale:別のロケール用にフォーマットする方法です。 timeIntervalSince1970は1970年以来(秒)に戻ります。これを1000倍してmsをクライアントに返すことができます。それはすべてNSDateのドキュメントにあります。
それは大体このように書き:このページによると
// Input string is something like: "/Date(1292851800000+0100)/" where
// 1292851800000 is milliseconds since 1970 and +0100 is the timezone
NSString *inputString = [item objectForKey:@"DateTimeSession"];
// This will tell number of seconds to add according to your default timezone
// Note: if you don't care about timezone changes, just delete/comment it out
NSInteger offset = [[NSTimeZone defaultTimeZone] secondsFromGMT];
// A range of NSMakeRange(6, 10) will generate "1292851800" from "/Date(1292851800000+0100)/"
// as in example above. We crop additional three zeros, because "dateWithTimeIntervalSince1970:"
// wants seconds, not milliseconds; since 1 second is equal to 1000 milliseconds, this will work.
// Note: if you don't care about timezone changes, just chop out "dateByAddingTimeInterval:offset" part
NSDate *date = [[NSDate dateWithTimeIntervalSince1970:
[[inputString substringWithRange:NSMakeRange(6, 10)] intValue]]
dateByAddingTimeInterval:offset];
このソリューションは壊れやすいです。数字がちょうど13桁(マイクロ秒をドロップすると10桁)の場合にのみ機能します。 2001年9月以前のすべての日付では動作しません。 –
Martin、あなたは正しいです。私は参照された要点のリンクがより多くの文脈を提供することを望む。 – Ali
:http://msdn.microsoft.com/en-us/library/system.datetime.ticks.aspxティックは、1月1日、0001で始まるのでdateWithTimeIntervalSince1970:
は自動的に設定されていませんダニで働く。この方法を使用することはできますが、違いを調整する必要があります。
- 1. NSDateフォーマッタ変換が正しい日付
- 2. Z形式のサーバー日付をローカルのnsdateに変換する
- 3. JSONのNSDateに日付とバック
- 4. フォーマットされた日付をNSDateに変換する
- 5. データフレームの日付列をPythonのティックに変換
- 6. 日付文字列をNSDateに変換します
- 7. JSONの日付値を「日、月」の形式に変換する
- 8. 日付文字列をNSDateに変換すると常にnilになる
- 9. 1タイムゾーンのNSString日付を別のタイムゾーンを持つNSDateオブジェクトに変換する
- 10. NSStringの日付をNSDateまたは特定の文字列に変換する
- 11. NSDateFormatter: 'GMT'の日付文字列をローカルNSDateに変換する方法は?
- 12. NSDate日付文字列からjava.util.dateへの変換
- 13. Swift Json日付文字列を日付オブジェクトに変換
- 14. タイムゾーンを含む日付文字列をNSDateに変換する方法
- 15. JSON日付を現地時間でのOracle日付に変換する方法
- 16. は、日付値をティック
- 17. ユーザーのカスタム日付書式文字列をnsdateに変換しますか?
- 18. 変換JSONの日付文字列
- 19. javascriptの日付をjsonの日付形式に変換します。
- 20. JavaScriptの日付をMS JSON形式に変換する
- 21. JSONの日付/時刻をC#に変換するDateTime
- 22. JSONオブジェクトを日付形式に変換するには?
- 23. 日付を日付から日付に変換する方法
- 24. JSONから.Netエポック日付変換
- 25. 日付に変換する
- 26. 日付をRからJSON形式に変換する
- 27. Swift:NSDateをC#ティックに変換する
- 28. NSString日付からNSDate
- 29. スイフト3:日付とNSDate?
- 30. R日付をExcelのシリアル日付に変換するには?
ありがとうございました。それは私のために働いた。 NSDateをクライアントのローカルタイムゾーンに表示する方法を知っていますか? –
また、NSNETのwebserviceに送信されるJSONオブジェクトを準備するために、NSDateからDate(ticks)に戻る方法も知っていますか? –