NSDateFormatter - SetDateFormat - PullRequest
       16

NSDateFormatter - SetDateFormat

3 голосов
/ 12 мая 2011

У меня есть текстовое поле, в которое пользователь может вставить дату и время в этом формате: MMDDHHMM (11230530), и я хочу, чтобы метка была установлена ​​на 23 ноября в 05:30.Я попытался:

NSString *data = [NSString stringWithFormat:@"%@", [date text]];

  // Convert string to date object
NSDateFormatter *dateFormatter =[[NSDateFormatter alloc]init];
[dateFormatter setDateFormat:@"MMdd hh:mm"];
NSDate *dateFromString = [dateFormatter dateFromString:data];
NSLog(@"%@", dateFromString);

// Convert date object to desired output format
[dateFormatter setDateFormat:@"???????????"];// I don't know how to change the format ;-)
data = [dateFormatter stringFromDate:dateFromString]; 
NSLog(@"%@", data);
[dateFormatter release];

, но я получаю нулевое значение из данных.какая-нибудь подсказка?

Ответы [ 2 ]

10 голосов
/ 12 мая 2011

Используйте этот код,

NSString *date = [NSString stringWithFormat:@"11230530"];
NSDateFormatter *dateFormatter =[[NSDateFormatter alloc]init];
[dateFormatter setDateFormat:@"MMddHHmm"];

NSDate *dateFromString = [dateFormatter dateFromString:date];
NSLog(@"%@", dateFromString);
[dateFormatter release];

dateFormatter =[[NSDateFormatter alloc]init];
[dateFormatter setDateFormat:@"dd MMMM' at 'hhmm a"];
NSString *stringFromDate=[dateFormatter stringFromDate:dateFromString];
//Use this text to display in that textfield
[dateFormatter release];
2 голосов
/ 12 мая 2011

Используйте этот код следующим образом

NSDate *data = [NSDate stringWithFormat:@"%@", [date text]];];
NSDateFormatter *dateFormatter =[[NSDateFormatter alloc]init];
[dateFormatter setDateFormat:@"MMdd hh:mm"];

NSDate *dateFromString = [dateFormatter dateFromString:data];
NSLog(@"%@", dateFromString);

Надеемся, что это поможет.

...