How do I convert the following Objective-C code into Swift code?
#define MAX_SIZE 11
char buffer[MAX_SIZE];
time_t time = [[NSDate date] timeIntervalSince1970];
strftime(buffer, MAX_SIZE, "%-l:%M\u2008%p", localtime(&time));
NSString *dateString = [NSString stringWithUTF8String:buffer];
NSLog(@"dateString: %@", dateString); // dateString: 11:56 PM
I'm formatting a date
.
As the commentators @BryanChen and @JasonCoco said, use NSDateFormatter.
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd 'at' h:mm a" // superset of OP's format
let str = dateFormatter.stringFromDate(NSDate())
A full description of the format strings is available in "Data Formatting Guide".
Here is another example that uses NSDateFormatterStyle
:
private func FormatDate(date:NSDate) -> String {
let dateFormatter = NSDateFormatter()
dateFormatter.dateStyle = NSDateFormatterStyle.LongStyle
return dateFormatter.stringFromDate(date)
}
The output is formatted as, "January 1, 1990".
If you want to read more about the formatter and the different available styles, checkout, NSFormatter under NSDateFormatter section.
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