基本上,我想做的就是将a转换string
为date
。该string
等于以下:
let myDateString = "01-53-36-24-75"
这是它的格式:
天-小时-分钟-秒-毫秒
因此,如果我没有Days,则只需创建一个dateFormatter
,然后执行以下操作:
let separator = "-"
self.dateFormatter.dateFormat = "HH\(separator)mm\(separator)ss\(separator)SS"
然后,我会转换myDateString
为date
从self.dateFormatter
。但是,既然我已经过了几天,(几天过去了),我不知道如何将转换string - myDateString
为date
。
如果要支持以下日期格式:
Days-Hours-Minutes-Seconds-Milliseconds
然后,您将需要具有以下格式:
dateFormatter.dateFormat = "DDD-HH-mm-ss-SS"
该DDD表明您希望一年中的哪一天。
要从中获取日期对象dateFormatter
(假设是一个NSDateFormatter
实例),则可以使用dateFromString
方法。例如:
var myDate: NSDate? = dateFormatter.dateFromString("01-53-36-24-75")
请注意,dateFromString返回Optional。因此,如果您的格式不能转换给定的字符串,则nil
返回。
现在,我想指出两点。
首先,该日期格式不提供年份值。因此,年份值将是默认年份。
其次,日期字符串01-53-36-24-75
似乎是错误的。具体来说,的小时值53
超出范围(最大为23)。
无论如何,如果您运行以下代码段:
var dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "DDD-HH-mm-ss-SS"
let myDateString1 = "01-53-36-24-75" // Your value
let myDateString2 = "01-01-02-03-04" // My example value
println("myDateString1 = \(dateFormatter.dateFromString(myDateString1))")
println("myDateString2 = \(dateFormatter.dateFromString(myDateString2))")
控制台输出为:
myDateString1 = nil
myDateString2 = Optional(2000-01-01 06:02:03 +0000)
如您所见,您的值已转换为,nil
因为53
无法进行转换。
我的值的年份值转换为2000
,这是默认值,因为它没有在格式或字符串中指定年份。
有关日期格式化程序中使用的符号,请参见此日期格式模式。(此链接由Apple的Date Formatters页面引用。)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句