0

Input: Fri, 26 Apr 2013 21:56:31 EDT

 NSDateFormatter *df1 = [[NSDateFormatter alloc] init];

 [df1 setDateFormat:@"EE, dd MMM YYYY HH:mm:ss zzz"];

  NSDateFormatter *df = [[NSDateFormatter alloc] init];

 [df setDateFormat:@"yyyy-MM-dd HH:mm:ss ZZZ"];

 NSString *startDateStr2 = [df1 stringFromDate:[NSDate date]];

 NSLog(@"currentDate: %@", startDateStr2);

but i am getting output : Sat, 05 Jan 2013 07:26:31 GMT+05:30

4

1 回答 1

2

使用下面的方法来改变NSDate..的格式

-(NSString *)changeDateFormat:(NSString*)stringDate dateFormat:(NSString*)dateFormat getwithFormat:(NSString *)getwithFormat{


    NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
    [dateFormatter setDateFormat:dateFormat];

    NSDate *date = [dateFormatter dateFromString:stringDate];

    dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
    [dateFormatter setDateFormat:getwithFormat];

    NSString *convertedString = [dateFormatter stringFromDate:date];
    NSLog(@"Converted String : %@",convertedString);
    return convertedString;
}

使用其 3 个参数调用上述方法..

1. stringDate :以字符串类型传递您的日期。

2. dateFormat:设置在您传递的字符串日期中使用的格式。例如,如果您的字符串日期"14-03-2013 11:22 am"设置为@"dd-MM-yyyy hh:mm a".

3. getwithFormat :设置你想要的格式,就好像你想要日期14/03/2013然后设置格式@"dd/MM/yyyy"

如何调用它,请参见下面的示例方法:

NSString *strSDate = [self changeDateFormat:@"14-03-2013 11:22 am" dateFormat:@"dd-MM-yyyy hh:mm a" getwithFormat:@"dd/MM/yyyy"];
NSLog(@"\n\n Now Date => %@",strSDate);

输出为:现在日期 => 14/03/2013

希望对你有帮助...

于 2013-04-29T04:56:44.690 回答