我有一个字符串要以“Sat,Jan 30 @ 11:00 AM”的形式从网络中提取,并将其转换为NSDate。我可以使用下面的代码来执行此操作,但是年份默认为2000。
如何为NSDate将年份设置为当前年份?
var dateString = "Sat, Jan 30 @ 11:00 AM"
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "EEE, MMM dd @ hh:mm a"
let date = dateFormatter.dateFromString(dateString)
//date output is 2000-01-30 19:00:00 +0000
我相信这是Objective-C的答案:
“a date string without year to NSDate with year”
谢谢!
最佳答案
不确定这是否是最好的方法,因为我是编程新手。但是我会做类似的事情,我猜可以很好地工作(我知道顺序有点令人困惑,但是我只是在几分钟内做到了,而没有使代码“看起来不错” ^^):
var dateString = "Sat, Jan 30 @ 11:00 AM"
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "YYYY EEE, MMM dd @ hh:mm a"
//let date = dateFormatter.dateFromString(dateString)
let currentDate = NSDate()
let newFormatter = NSDateFormatter()
newFormatter.dateFormat = "YYYY"
let YearString = newFormatter.stringFromDate(currentDate)
let newDateString = String(YearString + " " + dateString)
let date = dateFormatter.dateFromString(newDateString)
print(date)
关于ios - 将NSDate从String设置为当前年份,不带年份,Swift,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35027296/