使用不同的日历标识符格式化NSDate?

时间:2015-05-08 12:16:30

标签: swift nsdate nsdateformatter nsdatecomponents

我试图打印一个不同日历标识符的人性化日期。我能够得到日期,但是当我格式化它时,它会输出回Gregorian(或我认为用户的当前日历)。

这是我尝试的内容:

var calendar = NSCalendar(calendarIdentifier: NSCalendarIdentifierIslamicCivil)
var flags = NSCalendarUnit(UInt.max)
var components = calendar?.components(flags, fromDate: NSDate())

let formatter = NSDateFormatter()
formatter.dateStyle = NSDateFormatterStyle.LongStyle

let dateString = formatter.stringFromDate(calendar!.dateFromComponents(components!)!)

println(dateString)

这会打印:May 8, 2015,但我试图让它打印Rajab 19, 1436。这可能吗?

1 个答案:

答案 0 :(得分:1)

只需添加以下行

即可
formatter.calendar = calendar