iOS 日期处理 - 解析日期(转载)

2016-08-13  本文已影响63人  断忆残缘
1、日期格式

1.年

y 将年份 (0-9) 显示为不带前导零的数字
yy 以带前导零的两位数字格式显示年份
yyy 以四位数字格式显示年份
yyyy 以四位数字格式显示年份 
2.月
M 将月份显示为不带前导零的数字(如一月表示为 1)
MM 将月份显示为带前导零的数字(例如 01/12/01)
MMM 将月份显示为缩写形式(例如 Jan)
MMMM 将月份显示为完整月份名(例如 January)
一月 Jan January
二月 Feb February
三月 Mar March
四月 Apr April
五月 May May
六月 Jun June
七月 Jul July
八月 Aug August
九月 Sep September
十月 Oct October
十一月 Nov November
十二月 Dec December

3.日

d 将日显示为不带前导零的数字(如 1)
dd 将日显示为带前导零的数字(如 01) 
4.星期

EEE 将日显示为缩写形式(例如 Sun)
EEEE 将日显示为全名(例如 Sunday)
星期一 Mon Monday
星期二 Tue Tuesday
星期三 Wed Wednesday
星期四 Thu Thursday
星期五 Fri Friday
星期六 Sat Saturday
星期天 Sun Sunday 
5.小时

h 使用 12 小时制将小时显示为不带前导零的数字(例如 1:15:15 PM)
hh 使用 12 小时制将小时显示为带前导零的数字(例如 01:15:15 PM)
H 使用 24 小时制将小时显示为不带前导零的数字(例如 1:15:15)
HH 使用 24 小时制将小时显示为带前导零的数字(例如 01:15:15) 
6.分钟

m 将分钟显示为不带前导零的数字(例如 12:1:15)
mm 将分钟显示为带前导零的数字(例如 12:01:15)
7.秒

s 将秒显示为不带前导零的数字(例如 12:15:5)
ss 将秒显示为带前导零的数字(例如 12:15:05)
f 显示秒的小数部分
ff 将精确显示到百分之一秒
ffff 将精确显示到万分之一秒
用户定义格式中最多可使用七个 f 符号 
8.上午,下午
t 使用 12 小时制
中午之前任一小时显示大写的 A
中午到 11:59 PM 之间的任一小时显示大写的 P
tt 对于使用 12 小时制的区域设置
中午之前任一小时显示大写的 AM
中午到 11:59 PM 之间的任一小时显示大写的 PM
对于使用 24 小时制的区域设置,不显示任何字符 
9.时区

z 显示不带前导零的时区偏移量
zz 显示带前导零的时区偏移量(例如 -08)
zzz 显示完整的时区偏移量(例如 -0800)
10. 范例

///  根据指定的日期字符串创建日期
    ///  dateSring 日期字符串
    ///  日期字符串格式为:"Sun May 24 13:59:03 +0800 2015"
    class func createDate(dateSring: String) -> NSDate? {
        let df = NSDateFormatter()
        df.locale = NSLocale(localeIdentifier: "ch")
        df.dateFormat = "EEE MMM dd HH:mm:ss zzz yyyy"
        return df.dateFromString(dateSring)
    }

2、为NSDate 创建分类

/// 从字符串中解析到准确时间
// 参数 dateString 为时间字符串   formatString 为时间字符串对应的格式
class func getDate(dateString: String, formatString: String) -> NSDate? {
    // dateFormatter
    // 1. 实例化
    let df = NSDateFormatter()
    // 2. 要指定日期的地区,Xcode 6.3 beta 还不需要,地区需要指定英语
    // 注意:在真机调试的时候,一定要指定区域,否则以前版本同样无法转换
    df.locale = NSLocale(localeIdentifier: "en")
    
    // 3. 设置日期格式
    df.dateFormat = formatString
        
    // 4. 生成日期
    return df.dateFromString(dateString)
}


3、日期处理类 NSCalendar
。。。
上一篇下一篇

猜你喜欢

热点阅读