swift - 如何在 Swift 中使用 DateFormatter 从欧洲时间获取日期
问题描述
我试着约个约会,但我只有时间。现在,我不在乎年、月或日。重要的是时间。
我的输入格式为“hh:mm:ss”(即欧洲时间格式)。
问题是 12:59:59 以上的任何时间都不起作用!
如何从 12:59:59 以上的时间获取日期????
我的代码如下所示:
import UIKit
let str = "17:02:09"
let mydateFormatter = DateFormatter()
mydateFormatter.dateFormat = "hh:mm:ss"
let timezone = TimeZone(abbreviation: "CEST") ?? TimeZone.current
mydateFormatter.timeZone = timezone
mydateFormatter.locale = Locale(identifier: "de_DE") as Locale?
let date1 = mydateFormatter.date(from: str)
print(date1?.description ?? "no date available")
输出: 没有可用的日期
如果我将 str 的小时设置设置为低于或等于 12,那么它可以工作。
例如,如果我设置 str = "12:02:09",我会得到输出:1999-12-31 23:02:09 +0000
例如,如果我设置 str = "10:02:09,我得到输出:2000-01-01 09:02:09 +0000
例如,如果我设置 str = "13:02:09,我得到输出:没有可用的日期
如何从 12:59:59 以上的时间获取日期????
理想情况下,如何获得与 input-time 匹配时间的日期?
解决方案
推荐阅读
- excel - 范围属性不起作用;不显示相应的单元格值
- c++ - Atom:使用 gcc for C++ 编译时出错
- angular - Angular Service Worker - 如果服务器返回错误,则返回缓存响应
- nginx - 如果证书由 3rd 方 CA 签名,我是否需要指定 ssl_trusted_certificate 参数
- vue.js - Nuxt 中具有多个请求的 AsyncData
- websocket - 如何重用 AWS 套接字?
- java - 如何从外部资源为 @exampleProperty 注释提供值?
- entity-framework - 如何混淆使用实体框架的项目代码?
- vega-lite - 如何在 Vega 中翻译文本
- python - 遇到 NaN 值时可迭代的 TypeError