【问题标题】:From dateFromString to stringFromDate从 dateFromString 到 stringFromDate
【发布时间】:2016-02-16 16:42:47
【问题描述】:

我有一个日期字符串,格式如下:

"2015-11-15 14:16:15 +0000"

我想以本地化格式显示它,甚至计算年龄。 要访问 NSDate,我使用以下代码:

dateFormatter.dateFormat = "yyyy-MM-dd hh:mm:ss +SSSS"
let birthDate = self.dateFormatter.dateFromString(userProfile["birthdate"] as! String)

然后为了显示日期(以短格式),我更改了 dateFormatter

dateFormatter.dateFormat = "yyyy-MM-dd"
let birthDateShort = self.dateFormatter.stringFromDate(birthDate!)

如果出于其他原因我不需要 NSDate 格式,我当然可以从初始字符串中提取文本。但这似乎仍然是一个漫长的往返,这是“正确”的方法吗?

【问题讨论】:

  • 我认为没有“更短的方法”可以做到这一点。小修正:如果您想要 24 小时日期格式,您应该使用“HH:mm...”格式而不是“hh:mm...”

标签: ios swift nsdate nsdateformatter


【解决方案1】:

这是完全正确的做法。而且这不是“长途往返”。字符串只是一个字符串:只是一种表示形式,一堆供人类阅读的字母/字形。 date 是与日历相关的重要信息。你需要那个日期作为做任何有意义的事情的中心支点。这正是你正在做的。 NSDateFormatter 是完全提供的,所以你可以做你正在做的事情。

【讨论】:

  • 感谢马特,永远感谢您的帮助!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-08-05
  • 1970-01-01
  • 2012-05-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-22
相关资源
最近更新 更多