0
をフォーマットしない:NSDateFormatter私は例えば、日付文字列を持っている(nilを返す)
2012-04-09T23:57:44.070Z
私の日付形式は次のとおりです。
[dateFormatter setDateFormat:@"yyyy'-'MM'-'dd'T'HH':'mm':'ss'Z'"];
しかし、それはnilを返します。私の日付形式に何が問題なの? ありがとう
をフォーマットしない:NSDateFormatter私は例えば、日付文字列を持っている(nilを返す)
2012-04-09T23:57:44.070Z
私の日付形式は次のとおりです。
[dateFormatter setDateFormat:@"yyyy'-'MM'-'dd'T'HH':'mm':'ss'Z'"];
しかし、それはnilを返します。私の日付形式に何が問題なの? ありがとう
-
と:
をエスケープするほど攻撃的である必要はありません。また、秒文字が間違っています。あなたは使用する必要があります:
NSDateFormatter *f = [[NSDateFormatter alloc] init];
[f setTimeZone:[NSTimeZone timeZoneWithName:@"GMT"]];
[f setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"];
NSLog(@"%@", [f dateFromString:@"2012-04-09T23:57:44.070Z"]);
このログを:
2012-04-09 23:57:44 +0000
日付フォーマッタにタイムゾーンを設定しない場合、あなたが、デバイスが今では何でも時間帯を意味と仮定するつもりです、およびではなく、 GMTのタイムゾーン(Z
が意味するもの)です。
これは間違った質問かもしれませんが、逆の場合はどうしたらいいですか?この文字列から日付オブジェクトを取得する方法:2012-04-09 23:57:44 +0000感謝! –
@RafaelMoreira 'NSDateFormatter'には' -dateFromString: 'メソッドがあります。 –
私はそれを知っています。私は、日付フォーマッタの形式がどんなものかを意味していました。私は試みました[dateFormatter setDateFormat:@ "yyyy-MM-dd HH:mm:ss ZZZ"];それは動作しません。私はZとZZを1つだけ試してみましたが、成功しませんでした。 –