我想在"波斯日期和格里高利"之间转换数据?在迅速。我正在研究算法来帮助我在它们之间进行转换,但我真的不明白如何实现它们。
如果他们是现有的在Swift工作的方式,请指点我。
提供和示例也将受到赞赏。
答案 0 :(得分:15)
Swift 3的更新:
let formatter = DateFormatter()
formatter.dateFormat = "dd/MM/yyyy"
formatter.calendar = Calendar(identifier: .gregorian)
let date = Date()
let dateInGrogrian = formatter.string(from: date)
print(dateInGrogrian)
formatter.calendar = Calendar(identifier: .persian)
formatter.dateFormat = "dd/MM/yyyy"
print("Converted date to Hijri = \(formatter.string(from: date))")
答案 1 :(得分:1)
我遇到问题,因为我正在运行swift 2 NOT 3.(我现在正在更新Xcode)
这里是上面代码的修复程序,供人们查看从Swift 2到Swift 3的更改
import UIKit
let formatter = NSDateFormatter()
formatter.dateFormat = "yyy/MM/dd"
formatter.calendar = NSCalendar(calendarIdentifier: NSCalendarIdentifierGregorian)
let date = NSDate()
let dateInGrogrian = formatter.stringFromDate(date)
print("Date in Grogrian = \(dateInGrogrian)")
formatter.calendar = NSCalendar(calendarIdentifier: NSCalendarIdentifierPersian)
formatter.dateFormat = "yyy/MM//dd"
print("Converted date to Jalali = \(formatter.stringFromDate(date))")
答案 2 :(得分:0)
对于Swift 5:格式在一年中变化不大
let formatter = DateFormatter()
formatter.dateFormat = "dd/MM/YYYY"
formatter.calendar = Calendar(identifier: .gregorian)
let date = Date()
let dateInGrogrian = formatter.string(from: date)
print(dateInGrogrian)
formatter.calendar = Calendar(identifier: .persian)
formatter.dateFormat = "dd/MM/YYYY"
print("Converted date to Hijri = \(formatter.string(from: date))")