NSDateFormatter - SetDateFormat

I have a text box in which the user can insert the date and time in this format: MMDDHHMM (11230530), and I want the label to be set on November 23 at 05:30. I tried:

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

but I get null from the data. any key?

+3
source share
2 answers

Use this code,

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];
+10
source

Use this code this way

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

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

Hope this helps.

+2
source

All Articles