0

私は 2012-12-24 08:59:00 +0000 として日付を取得しています.2012-12-20T16:00:00.000Zとしてこのコードを試しました

NSDateComponents *dayComponent = [[NSDateComponents alloc] init] ;
    NSDate* now = [NSDate date];
    NSCalendar *theCalendar = [NSCalendar currentCalendar];
NSDateFormatter* formatter = [NSDateFormatter alloc];
    [formatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZ"];
    [formatter setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"UTC"]];
dayComponent.day = -2;
        NSDate* fromDate = [theCalendar dateByAddingComponents:dayComponent toDate:now options:0];
        fromDateStr = [formatter stringFromDate:fromDate];

私の要件は、指定された形式で 2 日前、14 日前などの前日の日付を取得することです。しかし、私はfromDateStr空の文字列として取得しています。任意の提案をいただければ幸いです。

4

1 に答える 1

9

2012-12-20T16:00:00.000Z の日付形式は yyyy-MM-dd'T'HH:mm:ss.SSS'Z' です。

それが役立つことを願っています。

希望する結果が得られない場合はお知らせください。

これが私のために働いたサンプルコードです:

 NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
    [formatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"];
    NSString *str = [formatter stringFromDate:[NSDate date]];
    NSLog(@"Date = %@",str);

出力は次のとおりです。

Date = 2012-12-26T14:55:36.702Z
于 2012-12-26T09:14:09.507 に答える