1

iOS 5.1 と iOS 6.0 の違いに気付いた人はいますか? 以下では、日付文字列の形式がバージョンごとに異なります:NSDateFormatter

*dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
dateFormatter.dateFormat = @"MM/dd/yyyy HH:mm:ss (vvvvv)";
NSDate   *lDate   = [[NSDate alloc]init];
NSString *sDate   = [dateFormatter stringFromDate:lDate];

iOS 5.1 では、sDate は「10/01/2012 16:43:09 (GMT-05:00)」ですが、iOS 6.0 では、sDate は「10/01/2012 16:44:09 ()」です。

これがなぜなのかについてのアイデアはありますか?

4

3 に答える 3

2

@"MM/dd/yyyy HH:mm:ss (vvvvv)";と置き換えます@"MM/dd/yyyy HH:mm:ss ('GMT'Z)";

フォーマット文字列は、プレフィックスを除いZて何をしていたかを出力し、コロンもありません。vvvvvGMT

コロンが必要な場合は、次の行を追加して文字列に追加できます。

sDate = [NSString stringWithFormat:@"%@:%@", [sDate substringToIndex:sDate.length-3], [sDate substringWithRange:NSMakeRange(sDate.length-3, 3)]];
于 2012-10-01T22:29:54.513 に答える
1

GMT ではなく IST を使用しています。IOS 5 では問題なく動作していVましたが、IOS 6 では動作しませんでした。

于 2012-11-08T07:14:25.833 に答える
1

これで問題が解決すると思います(vを1つだけ使用してください):

NSDateFormatter* dateFormatter = [[NSDateFormatter alloc] init];
dateFormatter.dateFormat = @"MM/dd/yyyy HH:mm:ss (V)";
NSDate   *lDate   = [[NSDate alloc]init];
NSString *sDate   = [dateFormatter stringFromDate:lDate];
于 2012-10-01T22:09:49.370 に答える