使用 NSDateFormatter 的时间错误
wrong time using NSDateFormatter
我知道有几个关于这个的问题。但是我尝试了所有的建议,但时间仍然与我的真实设备的时间不匹配。
let dater = NSDate()
let dayTimePeriodFormatter = NSDateFormatter()
dayTimePeriodFormatter.locale = NSLocale.currentLocale()
dayTimePeriodFormatter.timeZone = NSTimeZone(name: "UTC")
dayTimePeriodFormatter.dateFormat = "H:s"
var dateString = dayTimePeriodFormatter.stringFromDate(dater)
设备(实时)时间:22:11。日期字符串输出:00:36
有什么建议吗?谢谢!
正如 Nick 指出的那样,您正在使用 UTC 作为时区,您可以使用 NSTimeZone.systemTimeZone()
进入当地时区
您也可能并不真的打算只使用小时 (H) 和秒 (s)。您可能还需要分钟 (m)。尝试使用 "H:m:s"
的日期格式
更好的是,使用 "H:mm:ss",这将强制分和秒为两位数,而不是一位数,这样您就不会以“10:4:3”结束了[=11] =]
你试过了吗dayTimePeriodFormatter.dateFormat = "HH:mm"
?
Apple 使用固定互联网。查看 here 以查看一些示例。这可能会有帮助
我知道有几个关于这个的问题。但是我尝试了所有的建议,但时间仍然与我的真实设备的时间不匹配。
let dater = NSDate()
let dayTimePeriodFormatter = NSDateFormatter()
dayTimePeriodFormatter.locale = NSLocale.currentLocale()
dayTimePeriodFormatter.timeZone = NSTimeZone(name: "UTC")
dayTimePeriodFormatter.dateFormat = "H:s"
var dateString = dayTimePeriodFormatter.stringFromDate(dater)
设备(实时)时间:22:11。日期字符串输出:00:36
有什么建议吗?谢谢!
正如 Nick 指出的那样,您正在使用 UTC 作为时区,您可以使用 NSTimeZone.systemTimeZone()
您也可能并不真的打算只使用小时 (H) 和秒 (s)。您可能还需要分钟 (m)。尝试使用 "H:m:s"
的日期格式更好的是,使用 "H:mm:ss",这将强制分和秒为两位数,而不是一位数,这样您就不会以“10:4:3”结束了[=11] =]
你试过了吗dayTimePeriodFormatter.dateFormat = "HH:mm"
?
Apple 使用固定互联网。查看 here 以查看一些示例。这可能会有帮助