将 NSDate 转换为 String 得到空对象
Converting NSDate to String gets empty object
在应用程序中,有一个屏幕,我在其中使用模式 Date
中的 Date Picker
来获取日期输入。
那么本屏会将NSDate
类型输入的日期转换成字符串后传到上屏显示为textFiled
。
func dateDetector(aDate: UIDatePicker) {
let dateFormat = NSDateFormatter()
dateFormat.dateStyle = NSDateFormatterStyle.MediumStyle
dateFormat.timeStyle = NSDateFormatterStyle.NoStyle
dueDate = aDate.date
我认为你没有给格式化程序一个样式。
let df = NSDateFormatter()
df.dateStyle = NSDateFormatterStyle.LongStyle
let ds = df.stringFromDate(nsd)
print(ds)
如果你不给它一个样式,你会得到一个空字符串。
基于 ryantxr 添加的答案
有时您需要在存储和检索日期时设置区域设置标识符。
例如:-
{
let dateFormat = NSDateFormatter()
dateFomat.locale = NSLocale(localeIdentifier:"en_IN")
dateFormat.dateStyle = NSDateFormatterStyle.MediumStyle
dateFormat.timeStyle = NSDateFormatterStyle.NoStyle
dueDate = aDate.date
}
当更改为字符串时
{
let dateFormat = NSDateFormatter()
dateFomat.locale = NSLocale(localeIdentifier:"en_IN")
dateFomat.dateStyle = NSDateFormatterStyle.MediumStyle
let datestring = dteformat.stringFromDate(dueDate)
}
希望对您有所帮助
在应用程序中,有一个屏幕,我在其中使用模式 Date
中的 Date Picker
来获取日期输入。
那么本屏会将NSDate
类型输入的日期转换成字符串后传到上屏显示为textFiled
。
func dateDetector(aDate: UIDatePicker) {
let dateFormat = NSDateFormatter()
dateFormat.dateStyle = NSDateFormatterStyle.MediumStyle
dateFormat.timeStyle = NSDateFormatterStyle.NoStyle
dueDate = aDate.date
我认为你没有给格式化程序一个样式。
let df = NSDateFormatter()
df.dateStyle = NSDateFormatterStyle.LongStyle
let ds = df.stringFromDate(nsd)
print(ds)
如果你不给它一个样式,你会得到一个空字符串。
基于 ryantxr 添加的答案
有时您需要在存储和检索日期时设置区域设置标识符。 例如:-
{
let dateFormat = NSDateFormatter()
dateFomat.locale = NSLocale(localeIdentifier:"en_IN")
dateFormat.dateStyle = NSDateFormatterStyle.MediumStyle
dateFormat.timeStyle = NSDateFormatterStyle.NoStyle
dueDate = aDate.date
}
当更改为字符串时 {
let dateFormat = NSDateFormatter()
dateFomat.locale = NSLocale(localeIdentifier:"en_IN")
dateFomat.dateStyle = NSDateFormatterStyle.MediumStyle
let datestring = dteformat.stringFromDate(dueDate)
}
希望对您有所帮助