swift - SwiftUI - 日期格式(前导零)
问题描述
所以..我的问题是:我需要解析以下字符串(来自请求的响应)-“PT9H”到“09.00”到目前为止,我有以下代码:
let input = "PT9H"
let formatter = DateFormatter()
formatter.dateFormat = "'PT'HH'H'"
let date = formatter.date(from: input)
let time = "\(Calendar.current.component(.hour, from: date)).\(Calendar.current.component(.minute, from: date))"
return "\(time)"
我得到的结果是:“9.0”,我需要结果中的前导零,例如:“09:00”。有任何想法吗?提前感谢,干杯!
解决方案
您可以像这样以某种方式格式化值:
let hour = Calendar.current.component(.hour, from: date)
let min = Calendar.current.component(.minute, from: date)
let time = String(format: "%02d:%02d", hour, min)
但是,这在不同的时区不会同样有效,并且会产生问题,因为 API 响应不是日期而是持续时间。
推荐阅读
- powershell - 为什么 powershell 正则表达式不能与 \n 一起使用?
- android - 如何将类实例作为参数提供给 Kotlin 函数
- c++ - 您如何编码将不同的可执行文件合并到一个窗口框架中?像浏览器一样?
- python - 熊猫将数据框与条件合并
- html - 如何使用 react-native-render-html 从包含电话号码或电子邮件的 html 内容中单击打开电话应用程序或电子邮件?
- c# - WPF 解除绑定 OnPropertyChanged 事件
- python - PyAudio 安装在 Mac 上总是失败
- c# - 为什么 System.Speech.Recognition 没有检测到或插入到文本框中?
- vba - 打开记录集时出现数据类型不匹配错误
- bash - 如何在运行 docker exec 命令时使用 docker 容器的环境变量