专注iOS开发工具癖IOS 知识积累

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;
}
上一篇下一篇

猜你喜欢

热点阅读