NSDate轉(zhuǎn)NSString
日期轉(zhuǎn)成字符串。這個是比較簡單隘蝎,對于初次遇到的同學可能會有些束手無策。這里把直觀的代碼分享給大家——直接上代碼:
//獲取系統(tǒng)當前時間
NSDate *currentDate = [NSDate date];
//用于格式化NSDate對象
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
//設置格式:zzz表示時區(qū)
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss zzz"];
//NSDate轉(zhuǎn)NSString
NSString *currentDateString = [dateFormatter stringFromDate:currentDate];
//輸出currentDateString
NSLog(@"%@",currentDateString);
NSDate對象包含兩個部分襟企,日期(Date)和時間(Time)嘱么。格式化的時間字符串主要也是針對日期和時間的。NSDateFormatter是一個很常用的類顽悼,用于格式化NSDate對象曼振,支持本地化的信息。
NSDateFormatter常用的格式有:
- yyyy-MM-dd
- HH:mm:ss.SSS
- yyyy-MM-dd
- HH:mm:ss
- yyyy-MM-dd
- MM dd yyyy
NSDateFormatter格式化參數(shù)如下:
- G: 公元時代蔚龙,例如AD公元
- yy: 年的后2位
- yyyy: 完整年
- MM: 月冰评,顯示為1-12
- MMM: 月,顯示為英文月份簡寫,如 Jan
- MMMM: 月木羹,顯示為英文月份全稱甲雅,如 Janualy
- dd: 日,2位數(shù)表示坑填,如02
- d: 日抛人,1-2位顯示,如 2
- EEE: 簡寫星期幾脐瑰,如Sun
- EEEE: 全寫星期幾函匕,如Sunday
- aa: 上下午,AM/PM
- H: 時蚪黑,24小時制盅惜,0-23
- K:時,12小時制忌穿,0-11
- m: 分抒寂,1-2位
- mm: 分,2位
- s: 秒掠剑,1-2位
- ss: 秒屈芜,2位
- S: 毫秒
NSString轉(zhuǎn)NSDate
既然NSDate可以轉(zhuǎn)成NSString,毫無疑問NSString也可以轉(zhuǎn)成NSDate。代碼如下:
//需要轉(zhuǎn)換的字符串
NSString *dateString = @"2015-06-26 08:08:08";
//設置轉(zhuǎn)換格式
NSDateFormatter *formatter = [[NSDateFormatter alloc] init] ;
[formatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
//NSString轉(zhuǎn)NSDate
NSDate *date=[formatter dateFromString:dateString];
NSDate和NSString相互轉(zhuǎn)換就是這么簡單井佑。
轉(zhuǎn)換工具類
在項目中属铁,我們需要用到轉(zhuǎn)換的地方可能不止一處,所以建議我們定義一個工具類躬翁。在工具類里實現(xiàn)如下兩個方法:
//NSDate轉(zhuǎn)NSString
+ (NSString *)stringFromDate:(NSDate *)date
{
//獲取系統(tǒng)當前時間
NSDate *currentDate = [NSDate date];
//用于格式化NSDate對象
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
//設置格式:zzz表示時區(qū)
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss zzz"];
//NSDate轉(zhuǎn)NSString
NSString *currentDateString = [dateFormatter stringFromDate:currentDate];
//輸出currentDateString
NSLog(@"%@",currentDateString);
return currentDateString;
}
//NSString轉(zhuǎn)NSDate
+ (NSDate *)dateFromString:(NSString *)string
{
//需要轉(zhuǎn)換的字符串
NSString *dateString = @"2015-06-26 08:08:08";
//設置轉(zhuǎn)換格式
NSDateFormatter *formatter = [[NSDateFormatter alloc] init] ;
[formatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
//NSString轉(zhuǎn)NSDate
NSDate *date=[formatter dateFromString:dateString];
return date;
}