時間的轉(zhuǎn)換也是開發(fā)經(jīng)常用到的,網(wǎng)絡(luò)上已經(jīng)有很多的例子,自己記錄一下......
系統(tǒng)的一些方法
NSTimeInterval ?timeZoneOffset = [[NSTimeZone systemTimeZone] secondsFromGMT];? ? [NSTimeZone systemTimeZone];
//系統(tǒng)所在時區(qū)??
[NSTimeZonedefaultTimeZone];
//默認時區(qū),貌似和上一個沒什么區(qū)別
?[NSTimeZone timeZoneForSecondsFromGMT:0];//這就是GMT+0時區(qū)了?
[dateFormatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:8*60*60]];//直接指定時區(qū),這里是東8區(qū)
將時間戳轉(zhuǎn)換成時間
NSTimeInterval ?interval = [[NSDate date] timeIntervalSince1970];
NSDate*date = [NSDate ?dateWithTimeIntervalSince1970:interval];
NSDateFormatter*objDateformat = [[NSDateFormatter ?alloc] init];? ?
?[objDateformat ?setDateFormat:@"yyyy-MM-dd HH:mm"];
self.timeStr = [objDateformat ?stringFromDate:date];
將0時區(qū)時間轉(zhuǎn)換成本地時區(qū)的時間
[formatter setTimeZone:[NSTimeZonesystemTimeZone]];
將字符串轉(zhuǎn)換為date
// 字符串化為日期轉(zhuǎn) 1996-06-06 06:06:06
-(NSDate *)stringIsChangeDadeWith:(NSString *)str
{
? ? static NSString *GLOBAL_TIMEFORMAT = @"yyyy-MM-dd HH:mm:ss";
? ? NSTimeZone* localzone = [NSTimeZone localTimeZone];
? ? NSTimeZone* GTMzone = [NSTimeZone timeZoneForSecondsFromGMT:0];
? ? NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
? ? [dateFormatter setDateFormat:GLOBAL_TIMEFORMAT]; //設(shè)置設(shè)計格式
? ? [dateFormatter setTimeZone:GTMzone]; //時區(qū)
? ? NSDate *date = [dateFormatter dateFromString:str];
? ? NSDate *dayDade = [NSDate dateWithTimeInterval:3600 sinceDate:date];
? ? [dateFormatter setTimeZone:localzone];
? ? return dayDade;
}
將date轉(zhuǎn)換為字符串//日期轉(zhuǎn)化為字符串 //[NSDate date]當前日期
-(NSString *)dateChangeStringWith:(NSDate *)date
{
? ? // 初始化時間格式控制器
? ? NSDateFormatter *matter = [[NSDateFormatter alloc] init];
? ? // 設(shè)置設(shè)計格式? ? [matter setDateFormat:@"yyyy-MM-dd hh:mm:ss zzz"];
? ? [matter setDateFormat:@"yyyy-MM-dd hh:mm:ss"];
? ? // 進行轉(zhuǎn)換
? ? NSString *dateStr = [matter stringFromDate:date];
? ? return dateStr;
}