2013-04-29 4 views
0

Вход: Fri, 26 Apr 2013 21:56:31 EDTEDT для GMT Конверсия

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); 

, но я получаю выход:Sat, 05 Jan 2013 07:26:31 GMT+05:30

ответ

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; 
} 

Вызвать выше метод с его тремя параметрами ..

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); 

результат: Теперь Date => 14/03/2013

надеюсь, что его полезным для вас ...