Am working in an iPhone app with using the NSDateFormatter. Am getting the time from the webservice like "00:00:00", "16:00:00","15:30:00" and so on
. I need to convert these time to if the time is "00:00:00" to "12 AM"
, if the time is "16:00:00" to "4 PM"
, if the time is "15:30:00" to "3.30 PM". I have used the below code to this but when i have pass "16:00:00" the date returns null
.
NSString *dats1 = @"16:00:00"; NSDateFormatter *dateFormatter3 = [[[NSDateFormatter alloc] init] autorelease]; [dateFormatter3 setDateStyle:NSDateFormatterMediumStyle]; [dateFormatter3 setDateFormat:@"hh:mm:ss"]; NSDate *date1 = [dateFormatter3 dateFromString:dats1]; NSLog(@"date1 : %@", date1); **// Here returning (null)** NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; [formatter setDateFormat:@"hh:mm a"]; NSLog(@"Current Date: %@", [formatter stringFromDate:date1]); **// Here also returning (null)** [formatter release];
When am passing "00:00:00" it is returning "12 AM" correctly. Can anyone please help me to solve this issue? Thanks in advance.
If your time format is in 24hrs
please use "HH:mm:ss"
format. Please test the code and let me know if it is working for you. I have tested and it is returning "4 PM"
NSString *dats1 = @"16:00:00"; NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease]; [dateFormatter3 setDateStyle:NSDateFormatterMediumStyle]; [dateFormatter3 setDateFormat:@"HH:mm:ss"]; NSDate *date1 = [dateFormatter3 dateFromString:dats1]; NSLog(@"date1 : %@", date1); **// Here returning (null)** [dateFormatter setDateFormat:@"hh:mm a"]; NSLog(@"Current Date: %@", [formatter stringFromDate:date1]); **// Here also returning (null)** [formatter release];
Thanks.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With