Package -

SHDateFormatter

Build Status Version License Platform

This framework supports encoding as well as decoding many different date and time format. At the moment the follownig are supported (see SHDateFormat):

  • shortWeekdayName => Sun, Mon, Tue, ...
  • longWeekdayName => Sunday, Monday, Tuesday, ...
  • shortTimeNoDate => 12:00 PM, 1:00 AM
  • noTimeShortDateNoYear => 12/31
  • noTimeShortDate => 12/31/2016
  • noTimeLongDate => December 31, 2016
  • noTimeRelativeDate => Today, Tomorrow, ...
  • ISO8601 => "yyyy'-'MM'-'dd'T'HH':'mm':'ss'Z'"

The ISO8601 format implements the standard for working with dates and times between client and server applications. A good explanation if this standard and how to work with it can be found in the Apple Documenation or on Ole Begemanns Blog.

Additionally the following convenience functions are available on the SHDateFormatter sharedInstance which will return default values if the input date is nil. They allow to easily deal with optionals and can provide additional functionality like giving you a relative date instead of e.g. "yyyy/MM/dd":

  • localizedTimeStringFromDate(_:) - will return --:-- per default
  • ... to be continued ...

Requirements

The framework is compatible with Xcode 9 and Swift 4. The minimum version is iOS 8.

Installation

SHDateFormatter is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod 'SHDateFormatter'

Next Steps

  • include more convenience functions to better support relative dates
  • tests for string2date conversion
  • support swift package manager and carthage

Author

Stefan Herold, stefan.herold@gmail.com

License

SHDateFormatter is available under the MIT license. See the LICENSE file for more info.

Github

link
Stars:

Advertisement