我的应用程序出现问题。我收到以下格式的日期:
“2015年5月5日 - 16:16 星期五”
像下面的图片一样-
来自 API,但我想将其转换为 NSDate
英语格式。
我通过@dfri找到了这段代码。它从英语转换为阿拉伯语,但我不知道我的 API dateFormat
。
// input date in given format (as string)
let inputDateAsString = "2016-03-09 10:33:59"
// initialize formatter and set input date format
var formatter = NSDateFormatter()
formatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
// read input date string as NSDate instance
if let date = formatter.dateFromString(inputDateAsString) {
// set locale to "ar_DZ" and format as per your specifications
formatter.locale = NSLocale(localeIdentifier: "ar_DZ")
formatter.dateFormat = "EEEE, d, MMMM, yyyy HH:mm a"
let outputDate = formatter.stringFromDate(date)
print(outputDate) // الأربعاء, 9 مارس, 2016 10:33 ص
}
我该怎么做?
最佳答案
为了更容易转换,我认为最好删除附加文本 所以我过滤了字符串并只保留了需要的数字
这是我的尝试:
var dateString = "الإثنين 2015.5.5 - 16:16 مساء بتوقيت ابوظبي"
dateString = dateString.trimmingCharacters(in: CharacterSet(charactersIn: "01234567890.-:").inverted)
var formatter = DateFormatter()
formatter.dateFormat = "yyyy.MM.dd - HH:mm"
let date = formatter.date(from: dateString)
print(date)
//"May 5, 2015 at 4:16 PM"
关于ios - 如何将阿拉伯文日期转换为英文日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48917062/