swift 获取网络时间

    /// 获取网络时间
    ///
    /// - Parameter response: 接口response
    /// - Returns: 时间字符串  "yyyy/MM/dd HH:mm:ss"
    func getNetWorkTime(response: HTTPURLResponse) -> String{
        let str:String = response.allHeaderFields["Date"] as! String
        let str1 = (str as NSString).substring(from: 5)
        let str2 = (str1 as NSString).substring(to: (str1.length - 4))
        let format: DateFormatter = DateFormatter.init()
        format.locale = Locale.init(identifier: "en_US")
        format.dateFormat = "dd MMM yyyy HH:mm:ss"
        
        let date: Date = (format.date(from: str2)?.addingTimeInterval(60*60*8))!
        let zone: NSTimeZone = NSTimeZone.system as NSTimeZone
        let interval:TimeInterval = TimeInterval(zone.secondsFromGMT(for: date))
        let localeDate: Date = date.addingTimeInterval(interval)
        let tmpDate1: String = String.init(format: "%@", localeDate as CVarArg)
        let tmpDate: String = tmpDate1.replacingOccurrences(of: " +0000", with: "")
        let newFor: DateFormatter = DateFormatter.init()
        newFor.dateFormat = "yyyy/MM/dd HH:mm:ss"
        let nowDate: Date = newFor.date(from: tmpDate)!
        let nowDates: String = newFor.string(from: nowDate)
        return nowDates
    }

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。