Gregorian到Hijri(反之亦然)

时间:2015-09-25 14:32:35

标签: swift date math formula

源代码来自

Hijri (islamic) calendar in swift التاريخ الهجري

How can I convert string date to NSDate?

我只是将它们放在一起,但输出有一些错误

    let dateFormatter = NSDateFormatter()

    dateFormatter.dateFormat = "YYYY-MM-DD"

    let GregorianDate = dateFormatter.dateFromString("\(Yeartext1.text!)-\(Monthtext1.text!)-\(Daytext1.text!)")

    let islamic = NSCalendar(identifier: NSIslamicCalendar)

    let components = islamic?.components(NSCalendarUnit(rawValue: UInt.max), fromDate: GregorianDate!)

    resultlable.text = "\(components!.year) - \(components!.month) - \(components!.day)"

例如,用户将输入格里高利日期(2015/09/29)并显示Hijri年份(1436/12/15)。

但是这段代码的结果是错误的。

所以,请帮忙。

非常感谢x4h1d(https://stackoverflow.com/users/1459192/x4h1d),Grimxn(https://stackoverflow.com/users/3729417/grimxn)以及所有人的帮助。

1 个答案:

答案 0 :(得分:1)

您应该使用NSDate和NSDateFormatter进行日期转换。

This question可能会对您有所帮助。

Apple的documentation也提供了很多有用的信息。