views:

405

answers:

1

I want to check if an NSString is a valid URL so I can parse it to an NSURL variable... is there an easy way to do this? :)

CRASH For some reason the app crashes when checking.....

NSURL *shortURL = [[NSURL alloc] initWithString:data];
if(shortURL == nil)
{
    NSLog(@"INVALID");
}
else {
    NSLog(@"COOOL");
}

The console gives me this error.....

* Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '* -[NSURL initWithString:relativeToURL:]: nil string parameter' 2010-03-01 19:24:14.797 Snippety[8289:5e3b] Stack: ( 8307803, 2419510843, 8391739, 8391578, 2898550, 3152497, 12262, 12183, 27646, 2662269, 2661144, 2454790485, 2454790162 )

+3  A: 

NSURL's URLWithString returns nil if the URL passed is not valid. So, you can just check the return value to determine if the URL is valid.

MarkPowell
For some reason the app is crashing..... It works if the URL is valid, if not it just crashes ?? **code above**
tarnfeld
Try URLWithString rather than initWithString
MarkPowell