iOS获取网络时间;

来源:互联网 发布:可口可乐的销售数据 编辑:程序博客网 时间:2024/06/07 16:46

//获取网络时间

+ (NSString *)getTimeLine

{

    NSString *urlString =@"http://m.baidu.com";

    urlString = [urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

    NSMutableURLRequest *request = [[NSMutableURLRequestalloc] init];

    [request setURL:[NSURLURLWithString: urlString]];

    [request setCachePolicy:NSURLRequestReloadIgnoringCacheData];

    [request setTimeoutInterval:2];

    [request setHTTPShouldHandleCookies:FALSE];

    [request setHTTPMethod:@"GET"];

    NSHTTPURLResponse *response;

    [NSURLConnectionsendSynchronousRequest:request returningResponse:&responseerror:nil];

    NSString *date = [[response allHeaderFields] objectForKey:@"Date"];

    date = [date substringFromIndex:5];

    date = [date substringToIndex:[date length]-4];

    NSDateFormatter *dMatter = [[NSDateFormatteralloc] init];

    dMatter.locale = [[NSLocalealloc] initWithLocaleIdentifier:@"en_US"];

    [dMatter setDateFormat:@"dd MMM yyyy HH:mm:ss"];

    NSDate *netDate = [dMatter dateFromString:date];

    NSTimeZone *zone = [NSTimeZonesystemTimeZone];

    NSInteger interval = [zone secondsFromGMTForDate: netDate];

    //当前时间,时分秒

    NSDate *localeDate = [netDate  dateByAddingTimeInterval: interval];

    //再转换成毫秒

    NSTimeInterval logDateInterval= [localeDatetimeIntervalSince1970];

    long long logTime= logDateInterval*1000;

    //默认是秒,毫秒  时间戳*1000 ,想取得微秒  时间戳 * 1000 * 1000

     return [NSStringstringWithFormat:@"%lld", logTime];

}


//获取本地时间;

+ (NSString *)getTimeLine

{

    return [NSStringstringWithFormat:@"%lld", (longlong)([[NSDatedate]timeIntervalSince1970] *1000)];

}