当前位置: 首页 > 面试题库 >

如何快速转换包括时区的日期?

吕征
2023-03-14
问题内容

我想转换2015-08-14T20:02:25-04:002015-08-14 16:02
下面尝试的方法,但执行效果不佳(返回nil)。

let d = "2015-08-14T20:02:25-04:00"
let formatter = NSDateFormatter()
formatter.dateFormat = "yyyy-MM-dd HH:mm:ss ZZZZ"
let date: NSDate? = formatter.dateFromString(d)

如何转换此日期格式?


问题答案:

Xcode 8•Swift 3

您需要转义“ T”并使用适当的时区符号。请注意,这取决于您的日期字符串代表带Z "XXXXX"还是不带+00:00
的UTC(距格林尼治标准时间为零秒)时区"xxxxx"

let dateString = "2015-08-14T20:02:25-04:00"
let formatter = DateFormatter()
formatter.locale = Locale(identifier: "en_US_POSIX")
formatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ssXXXXX"
if let date = formatter.date(from: dateString) {
    formatter.dateFormat = "yyyy-MM-dd HH:mm"
    let string = formatter.string(from: date)
    print(string)
}

如果您需要一些参考,可以使用以下方法:

在此处输入图片说明



 类似资料:
  • 问题内容: 我有以下格式的日期字符串: 我需要将其更改为以下内容: 以前,我一直使用此库-> SwiftDate来操作日期,但现在不起作用。 我也尝试过类似的东西: 但这不起作用。我能怎么做? 提前致谢。 问题答案: 具有小数秒和时区的标准ISO8601日期格式为 yyyy-MM-dd’T’HH:mm:ss.SSSZ 斯威夫特3: 在macOS 10.13+中,iOS 11+ 是输入格式化程序的替

  • 问题内容: 我当前的代码: 结果: = 1415639000.67457 = 2014-11-10 17:03:20 +0000只是为了测试以查看提供了什么。 我希望第一个看起来像最后一个。dt的值= 1415637900。 另外,如何调整时区?在 iOS上 运行。 问题答案: 为了使日期显示为当前时区,我使用了以下内容。 Swift 3.0版本 斯威夫特5

  • 问题内容: 我有一个日期保存在Firestore字段中作为时间戳,我想将其转换为Swift中的日期: 我尝试了以下操作,但出现错误: 错误: 我想转换为Date的原因是为了可以使用此Date扩展名模仿您在Instagram帖子上看到的时间戳: 问题答案: 可以这样做: 或者你可以这样做: 请参阅时间戳参考文档。

  • 问题内容: 正如我的问题标题所述,我该如何转换为,然后将其存储到 swift中 。 在Objective-C中,我们可以这样做: 但是有人能告诉我如何迅速做到这一点吗? 提前致谢。 问题答案: 尝试这样的事情:

  • 问题内容: 如何快速将PFFile转换为UIImage? 在这段代码中,应用程序正在从解析中获取文件,现在我希望它显示在UIImageView上,但是我得到一个错误… 这是我的代码… 问题答案: PFFile是任何文件的解析表示。要获取“真实”文件(图像),您需要调用。试试吧:

  • 问题内容: 此代码段始终将日期解析为当前时区,而不是解析为字符串中的时区。 它输出: 而我期望: 有什么想法我做错了吗? 问题答案: 好吧,进一步Google搜索给了我自己的问题的答案:use ,如下所示: 这有效。