NSURL for NSString

I use this function to get the url from a string, but how can I return it?

- (NSString *)urlEncodeUsingEncoding:(NSStringEncoding)encoding forString:(NSString *)string { string = (__bridge NSString *)CFURLCreateStringByAddingPercentEscapes(NULL, (__bridge CFStringRef)string, NULL, (CFStringRef)@"!*'\"();:@&=+$,/?%#[]% ", CFStringConvertNSStringEncodingToEncoding(encoding)); return string; } 
+4
source share
4 answers
 [string stringByReplacingPercentEscapesUsingEncoding:NSUTF8Encoding]; 

BTW. If you use NSURL for the url file, be sure to use [url path] to get a string of unspared path, not [url absoluteString] .

+15
source

Using

 NSString *urlString = [url absoluteString]; 

for this purpose.

+7
source

Use this code.

 NSError* error = nil; NSString* text = [NSString stringWithContentsOfURL:your_url encoding:NSASCIIStringEncoding error:&error]; 

maybe this will help you

0
source

I myself found the answer:

 - (NSString *)decodedURLString { NSString *string = (__bridge NSString*)CFURLCreateStringByReplacingPercentEscapesUsingEncoding(kCFAllocatorDefault, (CFStringRef)self, CFSTR(""), CFStringConvertNSStringEncodingToEncoding(NSUTF8StringEncoding)); return string; } 

and for coding:

 - (NSString *)encodedURLString { NSString *string = (__bridge NSString *)CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault, (CFStringRef)self, NULL, CFSTR(":/=,!$&'()*+;[]@#?"), CFStringConvertNSStringEncodingToEncoding(NSUTF8StringEncoding)); return string; } 
-1
source

All Articles