NSUInteger an_Integer;
NSArray* ipItemsArray;
NSString*externalIP;
NSURL *iPURL =[NSURL URLWithString:@"http://www.dyndns.org/cgi-bin/check_ip.cgi"];
if(iPURL){
NSError*error = nil;
NSString*theIpHtml =[NSString stringWithContentsOfURL:iPURL
encoding:NSUTF8StringEncoding
error:&error];
if(!error){
NSScanner*theScanner;
NSString*text = nil;
theScanner =[NSScanner scannerWithString:theIpHtml];
while([theScanner isAtEnd]== NO){
// find start of tag
[theScanner scanUpToString:@"<" intoString:NULL];
// find end of tag
[theScanner scanUpToString:@">" intoString:&text];
// replace the found tag with a space
//(you can filter multi-spaces out later if you wish)
theIpHtml =[theIpHtml stringByReplacingOccurrencesOfString:
[NSString stringWithFormat:@"%@>", text]
withString:@" "];
ipItemsArray =[theIpHtml componentsSeparatedByString:@" "];
an_Integer=[ipItemsArray indexOfObject:@"Address:"];
externalIP =[ipItemsArray objectAtIndex: ++an_Integer];
}
NSLog(@"%@",externalIP);
}else{
NSLog(@"Oops... g %d, %@",
[error code],
[error localizedDescription]);
}
}
[pool drain];
return0;