NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"hh:mm:ss a"];
NSLog(@"Current Date: %@", [formatter stringFromDate:[NSDate date]]);
[formatter release];
The format of the string in setDateFormat is based on ISO-8601, http://en.wikipedia.org/wiki/ISO_8601#Dates
Swift 3 Version:
let formatter = DateFormatter()
formatter.dateFormat = "hh:mm:ss a"
print("Current date: \(formatter.string(from: Date()))") // -> Current date: 08:48:48 PM
There’s also a new site since this original answer that helps writing these format strings. Aptly named… http://nsdateformatter.com