直播平台源代码,iOS中使用 Date/NSDate 来获取时间
将Date转为字符串类型
extension Date {
///将Date转化为固定格式的字符串
///- parameter formatter : 时间格式 例如:yyyy年MM月dd日 HH:mm:ss
///- warning : 时间格式基本为小写,除了:
///- MM:月份
///- HH:表示24小时制 hh:表示12小时制
func toString(formatter: String) -> String {
let dateFormattr = DateFormatter()
dateFormattr.dateFormat = formatter
return dateFormattr.string(from: self)
}
}
字符串转Date
extension String{
///将字符串转化为Date
///- parameter formatter : 这段时间字符串的时间格式 例如:yyyy年MM月dd日 HH:mm
///- warning : 字符串格式与时间格式必须一一对应且特殊符号输入法一致,如示例参数中冒号为英文环境,如果字符串为中文环境,同样会错误,返回nil
func toDate(formatter: String) -> Date? {
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = formatter
formatter.locale = Locale.init(identifier: "en_US_POSIX") //Locale.init(identifier: "zh_Hans_CN")// 如果只在一个中国区使用可以用这个 // 解决网络时间解析不到 date 问题
return dateFormatter.date(from: self)
}
}
根据NSDateFormatter技术问答得出, 在 iOS 上,用户可以覆盖默认的 AM/PM 与 24 小时时间设置(通过设置 > 常规 > 日期和时间 > 24 小时时间),这会导致 NSDateFormatter 重写您设置的格式字符串,这可能会导致您的时间解析失败(具体就在 iOS15.4 转换出的 date 为 nil)。
以上就是直播平台源代码,iOS中使用 Date/NSDate 来获取时间, 更多内容欢迎关注之后的文章
标签:formatter,iOS,字符串,NSDate,时间,Date,格式,源代码 From: https://www.cnblogs.com/yunbaomengnan/p/17264959.html