Skip to content

Latest commit

 

History

History
162 lines (138 loc) · 5.19 KB

README.md

File metadata and controls

162 lines (138 loc) · 5.19 KB

AFDateHelper

Version License Platform

An NSDate Extension for Swift 2.0

Sample Project Screenshot

Usage

To run the example project, clone or download the repo, and run.

Creating Date from String

// Date from String with custom format
NSDate(fromString: "16 July 1972 6:12:00 ", format: .Custom("dd MMM yyyy HH:mm:ss")) -> NSDate
// Date from ISO8601(Year) String
NSDate(fromString:  "2009", format: .ISO8601(nil)) -> NSDate
// Date from ISO8601(Year & Month) String
NSDate(fromString:  "2009-08", format: .ISO8601(nil)) -> NSDate
// Date from ISO8601(Date) String
NSDate(fromString:  "2009-08-11", format: .ISO8601(nil)) -> NSDate
// Date from ISO8601(Date & Time) String
NSDate(fromString:  "2009-08-11T06:00-07:00", format: .ISO8601(nil)) -> NSDate
// Date from ISO8601(Date & Time & Sec) String
NSDate(fromString:  "2009-08-11T06:00:00-07:00", format: .ISO8601(nil)) -> NSDate
// Date from ISO8601(Date & Time & MilliSec) String
NSDate(fromString: "2009-08-11T06:00:00.000-07:00", format: .ISO8601(nil)) -> NSDate
// Date from DotNetJSON String
NSDate(fromString: "/Date(1260123281843)/", format: .DotNet) -> NSDate
// Date from RSS String
NSDate(fromString: "Fri, 09 Sep 2011 15:26:08 +0200", format: .RSS) -> NSDate
// Date from AltRSS String
NSDate(fromString: "09 Sep 2011 15:26:08 +0200", format: .AltRSS) -> NSDate -> NSDate

Creating Date

NSDate.tomorrow() -> NSDate
NSDate.yesterday() -> NSDate

Comparing Dates

date.isEqualToDate(date) -> Bool
date.isToday() -> Bool  
date.isTomorrow()-> Bool
date.isYesterday() -> Bool
date.isSameWeekAsDate(date) -> Bool
date.isThisWeek() -> Bool
date.isNextWeek() -> Bool
date.isLastWeek() -> Bool
date.isSameYearAsDate(date) -> Bool
date.isThisYear() -> Bool
date.isNextYear() -> Bool
date.isLastYear() -> Bool

Adjusting Dates

date.dateByAddingDays(2) -> NSDate
date.dateBySubtractingDays(4) -> NSDate
date.dateByAddingHours(2) -> NSDate
date.dateBySubtractingHours(4) -> NSDate
date.dateByAddingMinutes(2) -> NSDate
date.dateBySubtractingMinutes(4) -> NSDate
date.dateByAddingSeconds(90) -> NSDate
date.dateBySubtractingSeconds(90) -> NSDate
date.dateAtStartOfDay() -> NSDate
date.dateAtEndOfDay() -> NSDate
date.dateAtStartOfWeek() -> NSDate
date.dateAtEndOfWeek() -> NSDate
date.dateAtTheStartOfMonth() -> NSDate
date.dateAtTheEndOfMonth() -> NSDate

Time Interval Between Dates

date.secondsAfterDate(now) -> Int
date.secondsBeforeDate(now) -> Int
date.minutesAfterDate(now) -> Int
date.minutesBeforeDate(now) -> Int
date.hoursAfterDate(now) -> Int
date.hoursBeforeDate(now) -> Int
date.daysAfterDate(now) -> Int
date.daysBeforeDate(now) -> Int

Decomposing Dates

date.nearestHour() -> Int
date.year() -> Int
date.month() -> Int
date.week() -> Int
date.day() -> Int
date.hour() -> Int
date.minute() -> Int
date.seconds() -> Int
date.weekday() -> Int
date.nthWeekday() -> Int
date.monthDays() -> Int
date.firstDayOfWeek() -> Int
date.lastDayOfWeek() -> Int
date.isWeekday() -> Int
date.isWeekend() -> Int

To String

date.toString() -> String
date.toString(format: .Custom("dd MMM yyyy HH:mm:ss")) -> String
date.toString(format: .ISO8601(ISO8601Format.Year)) -> String
date.toString(format: .ISO8601(ISO8601Format.YearMonth)) -> String
date.toString(format: .ISO8601(ISO8601Format.Date)) -> String
date.toString(format: .ISO8601(ISO8601Format.DateTime)) -> String
date.toString(format: .ISO8601(ISO8601Format.DateTimeSec)) -> String
date.toString(format: .ISO8601(ISO8601Format.DateTimeMilliSec)) -> String
date.toString(format: .DotNet) -> String
date.toString(format: .RSS) -> String
date.toString(format: .AltRSS) -> String
date.toString(dateStyle: .ShortStyle, timeStyle: .NoStyle, doesRelativeDateFormatting: true) -> String
date.toString(dateStyle: .ShortStyle, timeStyle: .NoStyle, doesRelativeDateFormatting: false) -> String
date.toString(dateStyle: .MediumStyle, timeStyle: .ShortStyle, doesRelativeDateFormatting: false) -> String
date.toString(dateStyle: .LongStyle, timeStyle: .LongStyle, doesRelativeDateFormatting: false) -> String
date.toString(dateStyle: .FullStyle, timeStyle: .FullStyle, doesRelativeDateFormatting: false) -> String
date.relativeTimeToString()

Components To String

date.weekdayToString() -> String
date.shortWeekdayToString() -> String
date.veryShortWeekdayToString() -> String
date.monthToString() -> String
date.shortMonthToString() -> String
date.veryShortMonthToString() -> String

Requirements

Swift 2.0

Installation

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

pod "AFDateHelper"

Author

Melvin Rivera, melvin@allforces.com

License

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