我 run 时撞车,它指向dateFormmater.timezone.

无法强制转换类型为"Swift"的值.可选"(0x1192bf4a8)至"NSTimeZone"(0x1192c0270).

rowEvents.date的值是"1480134638.0"

我正试图从Firebase中取出一个保存为字符串的Unix时间戳.将其转换为日期,然后再次将其保存为字符串,以便我可以将其发布到单元格标签上.

我从StackOverflow那里得到了这个密码.我插入了我的数据,一切都很好,直到我运行它.我想不是所有的事情都好...

if let lastUpdated : String = rowEvents.date {

    let epocTime = TimeInterval(lastUpdated)! / 1000 // convert it from milliseconds dividing it by 1000

    let unixTimestamp = NSDate(timeIntervalSince1970: epocTime) //convert unix timestamp to Date

    let dateFormatter = DateFormatter()
    dateFormatter.timeZone = NSTimeZone() as TimeZone!
    dateFormatter.locale = NSLocale.current // NSLocale(localeIdentifier: "en_US_POSIX")
    dateFormatter.dateFormat =  "yyyy-MM-dd'T'HH:mm:ssZZZZZ"
    dateFormatter.date(from: String(describing: unixTimestamp))

    let updatedTimeStamp = unixTimestamp
    let cellDate = DateFormatter.localizedString(from: updatedTimeStamp as Date, dateStyle: DateFormatter.Style.full, timeStyle: DateFormatter.Style.medium)

    cell.subtitleLabel.text = cellDate              
}

结果来自以下代码:

let myTimeStamp = self.datePicker?.date.timeIntervalSince1970

let calendarDate = String(describing: myTimeStamp! /** 1000*/)

推荐答案

您可以使用Date(timeIntervalSince1970:)unixTimestamp转换为日期.

let unixTimestamp = 1480134638.0
let date = Date(timeIntervalSince1970: unixTimestamp)

如果你想用特定的格式显示字符串中的日期,你可以这样使用DateFormatter.

let date = Date(timeIntervalSince1970: unixtimeInterval)
let dateFormatter = DateFormatter()
dateFormatter.timeZone = TimeZone(abbreviation: "GMT") //Set timezone that you want
dateFormatter.locale = NSLocale.current
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm" //Specify your format that you want
let strDate = dateFormatter.string(from: date)

Swift相关问答推荐

在swift静态var扩展中,如何或可以访问和返回具体类?

启用完整并发判断以及如何解决警告

@ MainActor + Combine不一致的编译器错误

如何在visionOS上删除PhotosPicker背景 colored颜色 ?

通过SwiftUI中的列表 Select 从字典中检索值

在visionOS RealityView中使用.GenerateText时,未显示Reality Composer Promaterial 纹理

文件命名&NumberForMatter+扩展名&:含义?

如何使用可搜索在搜索栏中搜索包括>或<?

Swift数据关系

暂停我的 AR 会话并清除变量和锚点的功能

从 Obj-C 函数返回 swift 类的不兼容指针类型

从一个范围减go 多个范围

URL appendPathComponent(_:) 已弃用?

ConfirmationDialog取消swiftui中的错误

我怎样才能缩短(提高效率)这段代码?

我如何遵守与演员的协议?

如何在 SWIFTUI 中旋转修剪?

找不到接受提供的参数的/的重载

Swift中字节数组的NSData

应用程序包不包含有效标识符