Skip to content

Instantly share code, notes, and snippets.

@onderozcan
Last active October 9, 2015 15:00
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save onderozcan/6493f337a9c1dea8058d to your computer and use it in GitHub Desktop.
Save onderozcan/6493f337a9c1dea8058d to your computer and use it in GitHub Desktop.
URL in XML Link:
https://pubads.g.doubleclick.net/aclk?sa=L&ai=BPa7tLswXVqKQNJSfbv70ubgF9-CGpQcAAAAQASCPsd4lOABY97-wp4gCYJn-noa4IboBCzYyNHgzNTJfeG1syAEF2gEFaHR0cDqpAoumiCKaH5c-wAIC4AIA6gIULzEzMTMwMjQwNy9Vem1hbl9Ea3n4AvTRHpADhAeYA4QHqAMB0ASQTuAEAZAGAaAGI9gHAQ&num=0&cid=5GgCKLauz-kthEz8VwyzNqLz&sig=AOD64_3AsZ-FYmOIQbDXfzHieZUN2g4eEQ&client=ca-pub-3069068742246799&adurl=http://dkykartal.com/%3Futm_source%3DUzmanTV%26utm_medium%3DVideo_PreRoll%26utm_content%3DDKY_Kartal%26utm_campaign%3DDKY_Kartal_IBillBoard
Encoded uRL
https://pubads.g.doubleclick.net/aclk?sa=L%26ai=B7PT5ONYXVvGdC5HDb82luKAE9-CGpQcAAAAQASCPsd4lOABY97-wp4gCYJn-noa4IboBCzYyNHgzNTJfeG1syAEF2gEFaHR0cDqpAqVytYPcF5c-wAIC4AIA6gIULzEzMTMwMjQwNy9Vem1hbl9Ea3n4AvTRHpADhAeYA4QHqAMB0ASQTuAEAZAGAaAGI9gHAQ%26num=0%26cid=5GhVACL-85Q1oxtecsteBPSK%26sig=AOD64_0raH1tG2PfLKN7Glah6BlHJ6yzsw%26client=ca-pub-3069068742246799%26adurl=http://dkykartal.com/?utm_source=UzmanTV%26utm_medium=Video_PreRoll%26utm_content=DKY_Kartal%26utm_campaign=DKY_Kartal_IBillBoard
Decoded URL:
https://pubads.g.doubleclick.net/aclk?sa=L&ai=BPa7tLswXVqKQNJSfbv70ubgF9-CGpQcAAAAQASCPsd4lOABY97-wp4gCYJn-noa4IboBCzYyNHgzNTJfeG1syAEF2gEFaHR0cDqpAoumiCKaH5c-wAIC4AIA6gIULzEzMTMwMjQwNy9Vem1hbl9Ea3n4AvTRHpADhAeYA4QHqAMB0ASQTuAEAZAGAaAGI9gHAQ&num=0&cid=5GgCKLauz-kthEz8VwyzNqLz&sig=AOD64_3AsZ-FYmOIQbDXfzHieZUN2g4eEQ&client=ca-pub-3069068742246799&adurl=http://dkykartal.com/?utm_source=UzmanTV&utm_medium=Video_PreRoll&utm_content=DKY_Kartal&utm_campaign=DKY_Kartal_IBillBoard
Method that i used for Decoding:
-(NSString *)createUrlWithGivenString:(NSString *)string{
NSArray* components = [string componentsSeparatedByString:@"&"];
NSString * urlString = [NSString new];
for (NSString* str in components)
{
NSArray* keyval = [str componentsSeparatedByString:@"="];
urlString = [[urlString stringByAppendingString:keyval[0]]stringByRemovingPercentEncoding];
urlString = [[urlString stringByAppendingString:@"="] stringByRemovingPercentEncoding];
urlString = [[urlString stringByAppendingString:keyval[1]] stringByRemovingPercentEncoding];
urlString = [urlString stringByAppendingString:@"&"];
}
//removing Last & character which is not necessarry
urlString = [urlString substringToIndex:[urlString length]-1];
urlString= [self cleanWhiteSpace:urlString];
//var olan stringi su anda NSURL 'e decode edip cevirecegiz
NSString *encodedstr = encodeToPercentEscapeString(urlString);
return encodedstr;
}
NSString* encodeToPercentEscapeString(NSString *string) {
return (NSString *) CFBridgingRelease(CFURLCreateStringByAddingPercentEscapes(NULL,
(CFStringRef) string,
NULL,
(CFStringRef) @"&",
kCFStringEncodingUTF8));
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment