タグ付けされた質問 「nsdateformatter」

4
NSDateFormatterロケールの「feechur」を処理する最良の方法は何ですか?
それはNSDateFormatter予期せずあなたに噛み付く「機能」を持っているようです:あなたが次のような単純な「固定された」フォーマット操作を行う場合: NSDateFormatter* fmt = [[NSDateFormatter alloc] init]; [fmt setDateFormat:@"yyyyMMddHHmmss"]; NSString* dateStr = [fmt stringFromDate:someDate]; [fmt release]; その後、米国およびほとんどのロケールで正常に動作します...電話が24時間地域に設定されているユーザーは、設定の12/24時間スイッチを12に設定します。結果の文字列の終わり。 (例えば、NSDateFormatterを参照してください、私は何か間違ったことをしていますか、これはバグですか?) (そしてhttps://developer.apple.com/library/content/qa/qa1480/_index.htmlを参照してください) どうやらAppleはこれを "悪い"と宣言している-Broken As Designedで、彼らはそれを修正するつもりはない。 回避策は明らかに、特定の地域、一般的には米国の日付フォーマッターのロケールを設定することですが、これは少し面倒です: NSLocale *loc = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"]; [df setLocale: loc]; [loc release]; onsies-twosiesではそれほど悪くありませんが、私は約10の異なるアプリを扱っています。最初に見たアプリには、このシナリオのインスタンスが43あります。 マクロ/オーバーライドされたクラス/コードを不明瞭にすることなく、すべてを変更する労力を最小限に抑えるための賢いアイデアはありますか?(私の最初の本能は、NSDateFormatterをinitメソッドでロケールを設定するバージョンでオーバーライドすることです。alloc/ init行と追加されたインポートの2行を変更する必要があります。) 追加されました これは私がこれまでに思いついたものです-すべてのシナリオで機能するようです: @implementation BNSDateFormatter -(id)init { static NSLocale* en_US_POSIX = nil; NSDateFormatter* …

18
Swiftの日付形式
この日時を日付からどのように変換しますか? これから:2016-02-29 12:24:26 から:2016年2月29日 これまでのところ、これは私のコードであり、nil値を返します。 let dateFormatter = NSDateFormatter() dateFormatter.dateFormat = "MM-dd-yyyy" dateFormatter.timeZone = NSTimeZone(name: "UTC") let date: NSDate? = dateFormatter.dateFromString("2016-02-29 12:24:26") print(date)

13
Swiftで文字列を日付に変換する
この文字列"2016-04-14T10:44:00+0000"をに変換してNSDate、年、月、日、時間のみを保持するにはどうすればよいですか? そのT真ん中は、私が日付を扱うときに慣れているものを本当に捨てます。

8
年、月、日、時、分、秒の両方のNSDateを特定のスタイルにフォーマットする
基本的に、現在の日付と時刻を個別に取得する必要があります。 2009-04-26 11:06:54 以下のコードは、同じトピックに関する別の質問から、生成されます 今:| 2009-06-01 23:18:23 +0100 | dateString:| 2009年6月1日23:18 | 解析済み:| 2009-06-01 23:18:00 +0100 | これはほとんど私が探しているものですが、日付と時間を分けたいのです。 NSDateFormatter *format = [[NSDateFormatter alloc] init]; [format setDateFormat:@"MMM dd, yyyy HH:mm"]; NSDate *now = [[NSDate alloc] init]; NSString *dateString = [format stringFromDate:now]; NSDateFormatter *inFormat = [[NSDateFormatter alloc] init]; [inFormat setDateFormat:@"MMM dd, yyyy"]; …

10
iOSでISO 8601の日付を取得するにはどうすればよいですか?
を2004-02-12T15:19:21+00:00介してPHPでISO 8601日付文字列(たとえば)を取得するのは簡単date('c')ですが、Objective-C(iPhone)ではどのように取得しますか?それを行うための同様の短い方法はありますか? ここに私がそれをするために見つけた長い道のりがあります: NSDateFormatter* dateFormatter = [[[NSDateFormatter alloc] init] autorelease]; dateFormatter.dateFormat = @"yyyy-MM-dd'T'HH:mm:ssZ"; NSDate *now = [NSDate date]; NSString *formattedDateString = [dateFormatter stringFromDate:now]; NSLog(@"ISO-8601 date: %@", formattedDateString); // Output: ISO-8601 date: 2013-04-27T13:27:50-0700 それはとても中心的な何かのための恐ろしい多くのリガモラルのようです。


9
NSDateの日、月、年を整数形式で取得する方法は?
日、月、年のコンポーネントをNSDate整数形式で取得したいのですが、日付が1988年1月2日の場合、整数として1、2、1988を個別に取得する必要があります。iOSでこれを行うにはどうすればよいですか?私は同様の質問を見つけましたが、方法descriptionWithCalendarFormat:警告を出し、今では廃止されているようです。

11
iOS:数字から適切な月の名前を取得するにはどうすればよいですか?
NSDateformatterの一連の機能が人類に恩恵をもたらすことは知っていますが、同時にそれは私にとって非常に混乱しています。あなたが私を助けてくれることを願っています。 私のコードのどこかに、月を表すintがあります。つまり、1は1月、2月2日などになります。 私のユーザーインターフェイスでは、この整数を適切な月の名前として表示したいと思います。さらに、デバイスのロケールに準拠している必要があります。 あなたの洞察力をありがとう その間に、私は次のことを行いました。 int monthNumber = 11 NSString * dateString = [NSString stringWithFormat: @"%d", monthNumber]; NSDateFormatter* dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateFormat:@"MM"]; NSDate* myDate = [dateFormatter dateFromString:dateString]; [dateFormatter release]; NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; [formatter setDateFormat:@"MMMM"]; NSString *stringFromDate = [formatter stringFromDate:myDate]; [formatter release]; これはそれを行う方法ですか?少し言葉が多いようです。

2
このiOSはどのような皮肉なエラーですか?
次のようなカレンダーの日付を並べ替えるために使用するコードがいくつかあります。 #if !(TARGET_IPHONE_SIMULATOR) NSString *formatString = [NSDateFormatter dateFormatFromTemplate:@"HH:mm dd MMM yyyy" options:0 locale:[NSLocale currentLocale]]; [fmt setDateFormat:formatString]; #else [fmt setDateFormat:@"HH:mm dd MMM yyyy"]; #endif シミュレーターで実行すれば、すべて問題ありません。デバイスで実行すると、この皮肉なデバッグメッセージが表示されます。 2012-09-19 22:40:13.972 APPNAME [4923:907] * -[__ NSCFCalendar components:fromDate:]:日付をnilにすることはできません 本当に、操作がゼロの日付で何を意味することになっていると思いますか? 今のところ、例外は回避されています。 これらのエラーのいくつかはこの苦情で報告される予定であり、その後の違反は、nilから生じるランダムなことを何でも黙って実行します。今回これが発生したバックトレースは次のとおりです(コンパイラの最適化のために一部のフレームが欠落している可能性があります)。 あなたはそれを笑わなければなりませんが、私のdateFormatFromTemplate:コードの何が悪いのかわかりません。どんな助けでもいただければ幸いです。 Xcode V4.5の実行 更新: バックトレース: 0 CoreFoundation 0x39ff0e55 + 84 1 APPNAME 0x00040be1- [MeetingsViewController dateAtBeginningOfDayForDate:] …

11
現在のNSDateをタイムスタンプ形式で取得する
現在の時刻を取得して文字列に設定する基本的な方法があります。ただし、1970年以降のUNIXタイムスタンプ形式で現在の日付と時刻をフォーマットするにはどうすればよいですか? これが私のコードです: NSDate *currentTime = [NSDate date]; NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateFormat:@"hh-mm"]; NSString *resultString = [dateFormatter stringFromDate: currentTime]; NSDateFormatter'resultString'をタイムスタンプに変更するために使用することは可能ですか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.