我在函数中遇到NSDate问题。基本上,格式化不起作用,我需要另一组眼睛来看看我做错了什么。
代码:
@IBOutlet weak var dateField: NSTextField!
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "MMMM dd yyyy"
let currentDate = NSDate()
convertedDateString = dateFormatter.string(from:currentDate as Date)
dateField.stringValue = convertedDateString as String
print("convertedDate: ", convertedDateString)
print("dateField.stringValue: ", dateField.stringValue)
结果:
convertedDate:2016年7月25日
dateField.stringValue:7/25/16
答案 0 :(得分:32)
Date().toString() // convert date to string with userdefined format.
extension Date {
func toString() -> String {
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "MMMM dd yyyy"
return dateFormatter.string(from: self)
}
}
答案 1 :(得分:8)
根据日期格式获取字符串的扩展
extension Date {
func toString(format: String) -> String {
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = format
return dateFormatter.string(from: self)
}
}
Date().toString(format:"H:mm")
答案 2 :(得分:5)
这是我在操场上尝试的方式,它可以正常工作。
import Foundation
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "MMMM dd yyyy"
let currentDate = NSDate()
let convertedDateString = dateFormatter.stringFromDate(currentDate)
var dateField:NSTextField = NSTextField()
dateField.stringValue = convertedDateString as String
print(convertedDateString) //July 25 2016
print(dateField.stringValue) //July 25 2016
唯一不同的是我改为NSDateFormatter
而不是dateFormatter.string
我有dateFormatter.stringFromDate
。
您是否意外地在故事板或xib中设置了NSTextField
的某些值?
答案 3 :(得分:0)
我遇到的问题是在重新安装和测试之前没有从手机中删除应用程序。代码在模拟器中工作,但不在手机上。希望这有帮助