gpt4 book ai didi

swift : Convert 12hr time to 24hrs when device is in 12hrs formate

转载 作者:行者123 更新时间:2023-11-30 13:40:54 25 4
gpt4 key购买 nike

我想将 12 小时时间转换为 24 小时。但是当我的设备当前时间在 12 小时内时,它会给出错误:

fatal error: unexpectedly found nil while unwrapping an Optional value

当我的设备当前时间为 24 小时时,它会给出正确的输出。

我使用了以下代码:

func getTimeFromString(timeString : String)-> NSDate
{
let formatter = NSDateFormatter();
formatter.dateFormat = "HH:mm"
let date = formatter.dateFromString(timeString)//here timeString is "06:45 am"
return date!
}

我的问题是,当设备当前时间为 12 小时时间格式时,为什么它无法将 12 小时时间转换为 24 小时?

请向我建议任何想法、代码、引用。提前致谢!!

最佳答案

您提供的输入字符串与您指定的日期格式不匹配。

对您的函数进行一些更改

  1. 它应该返回一个可选的NSDate(当格式无法识别时)
  2. 格式应为hh:mma

像这样

func dateFromString(timeString: String)-> NSDate? {
let formatter = NSDateFormatter()
formatter.dateFormat = "hh:mma"
return formatter.dateFromString(timeString)
}

现在你可以使用它了

dateFromString("10:15am") // "Jan 1, 2000, 12:15 AM"
dateFromString("10:15pm") // "Jan 1, 2000, 12:15 PM"
dateFromString("NOT A DATE") // nil

关于 swift : Convert 12hr time to 24hrs when device is in 12hrs formate,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35572585/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com