您的位置:首页 > 理论基础 > 计算机网络

通过网络获取系统的真实时间

2017-11-10 10:57 323 查看
- (NSString *)getInternetDate

{

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

    urlString = [urlString stringByAddingPercentEscapesUsingEncoding: NSUTF8StringEncoding];

    NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];

    [request setURL:[NSURL URLWithString: urlString]];

    [request setCachePolicy:NSURLRequestReloadIgnoringCacheData];

    [request setTimeoutInterval: 2];

    [request setHTTPShouldHandleCookies:FALSE];

    [request setHTTPMethod:@"GET"];

    NSHTTPURLResponse *response;

    [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:nil];

    

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

    date = [date substringFromIndex:5];

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

    NSDateFormatter *dMatter = [[NSDateFormatter alloc] init];

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

    [dMatter setDateFormat:@"dd MMM yyyy HH:mm:ss"];
    NSDate *netDate = [[dMatter dateFromString:date] dateByAddingTimeInterval:60*60*8];

    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];

    //dd表示一个月的第多少天  DD表示一年的第多少天

    //hh表示12进制的时间,HH表示24进制的时间

    //ss表示秒 SS表示毫秒

    dateFormatter.dateFormat=@"yyyy-MM-dd HH:mm:ss";//这里M必须是大写

    [dateFormatter setLocale:[[NSLocale alloc]initWithLocaleIdentifier:@"zh_CN"] ];

    //将时间转换为字符串

    NSString *dateString = [dateFormatter  stringFromDate:netDate];

    // NSLog(@"%@",dateString);

    return dateString;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Objective-C