ios - 转换为 NSDate 的字符串格式应该是什么?

标签 ios swift nsdate nsdateformatter

我从服务器得到以下两种类型的字符串:

  1. 2016-07-28T12:25:31.922247
  2. 2016-07-28T13:39:13

我想将它们转换成 NSDate。我正在使用以下代码片段进行转换,但它失败了:

let dateFormatter = NSDateFormatter()
dateFormatter.timeZone = NSTimeZone(name: "UTC")
dateFormatter.dateFormat = "yyyy-MM-ddTHH:mm:ss"

我没有得到想要的输出。

最佳答案

如果您不关心秒的小数部分,那么您可以像这样删除它。

var strDate = "2016-07-28T12:25:31.922247"
if strDate.rangeOfString(".") != nil{
     let arr = strDate.characters.split{$0 == " "}.map(String.init)
     strDate = arr[0]
}
//Now you can convert this string to date using same date format
let formatter= NSDateFormatter()
formatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss"
let date = formatter.dateFromString(strDate)

关于ios - 转换为 NSDate 的字符串格式应该是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38641056/

相关文章:

objective-c - 对日期字符串或对象的 NSArray 进行排序

iphone - 如何将 1 分钟的时间间隔添加到 iPhone 中的 NSDate 对象

ios - 为什么 CGContext 没有循环绘制?

ios - 如何自定义WebRTC视频源?

c - 在swift项目中导入静态库

ios - 可编码的 API 请求

ios - Swift 4 尝试呈现其 View 不在窗口层次结构中的 ViewController

ios - 取消 NSOperationQueue 上的所有操作后不久发生此异常,我该怎么办

ios - 是否有分配 UITabBarController 管理的 Controller 属性的最佳实践?

ios - NSDateFormatter 中 'YYYY' 和 'yyyy' 之间的区别