iOS时间的时区转换以及一些方法记录
2016-09-20 本文已影响5060人
那一片阳光
系统的一些方法
NSTimeInterval timeZoneOffset = [[NSTimeZone systemTimeZone] secondsFromGMT];
[NSTimeZone systemTimeZone];//系统所在时区
[NSTimeZone defaultTimeZone];//默认时区,貌似和上一个没什么区别
[NSTimeZone timeZoneForSecondsFromGMT:0];//这就是GMT+0时区了
[dateFormatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:8*60*60]];//直接指定时区,这里是东8区
将时间戳转换成时间
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时区时间转换成本地时区的时间
[formatter setTimeZone:[NSTimeZone systemTimeZone]];
将字符串转换为date
- (NSDate *)stringToDate:(NSString *)strdate
{
NSDateFormatter *dateFormatter = [[NSDateFormatteralloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSDate *retdate = [dateFormatter dateFromString:strdate];
[dateFormatter release];
return retdate;
}
将date转换为字符串
- (NSString *)dateToString:(NSDate *)date
{
NSDateFormatter *dateFormatter = [[NSDateFormatteralloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSString *strDate = [dateFormatter stringFromDate:date];
[dateFormatter release];
return strDate;
}