如何从字符串返回预定义时区的NSDate
let responseString = "2015-8-17 GMT+05:30"
var dFormatter = NSDateFormatter()
dFormatter.dateFormat = "yyyy-M-dd ZZZZ"
var serverTime = dFormatter.dateFromString(responseString)
println("NSDate : \(serverTime!)")
Run Code Online (Sandbox Code Playgroud)
上面的代码返回时间为
2015-08-16 18:30:00 +0000
Run Code Online (Sandbox Code Playgroud)
Sau*_*hah 38
必须将日期格式分配给日期格式化程序的dateFormat属性.
let date = NSDate.date()
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd"
let str = dateFormatter.stringFromDate(date)
println(str)
Run Code Online (Sandbox Code Playgroud)
这将使用设备上的默认时区打印日期.只有当您想要根据不同的时区输出时,您才会添加例如
dateFormatter.timeZone = NSTimeZone(name: "UTC")
Run Code Online (Sandbox Code Playgroud)
另请参阅链接http://www.brianjcoleman.com/tutorial-nsdate-in-swift/
Nik*_*uhe 11
如何在预定义的时区返回NSDate?
你不能.
一个实例NSDate不包含有关时区或日历的任何信息.它只是简单地确定了世界时间中的一个点.
您可以NSDate在任何日历中解释此对象.Swift的字符串插值(示例代码的最后一行)使用的是一个NSDateFormatter使用UTC(输出中的"+0000").
如果您希望将NSDate值作为当前用户日历中的字符串,则必须为此明确设置日期格式化程序.
Amr*_*Amr 10
迅捷4.0
dateFormatter.timeZone = TimeZone(abbreviation: "UTC")
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
44551 次 |
| 最近记录: |