本文介绍了ObjC 中的 NSURL 编码的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何在 NSURL 中进行 URL 编码?

How to do URL encoding in NSURL ?

谢谢

推荐答案

你可以使用 stringByAddingPercentEscapesUsingEncoding:

You can use stringByAddingPercentEscapesUsingEncoding:

NSString* escapedUrlString =
   [unescapedString stringByAddingPercentEscapesUsingEncoding:
                        NSUTF8StringEncoding];

但是,根据我的经验,这种方法并不完美(在处理一些保留字符方面),并且在许多情况下我需要使用变体:

However, in my experience, this method isn't quite perfect (in handling some reserved characters), and in many cases I needed to use the variant:

 NSString * escapedUrlString =
  (NSString *)CFURLCreateStringByAddingPercentEscapes(
    NULL,
    (CFStringRef)unescapedString,
    NULL,
    (CFStringRef)@"!*'();:@&=+$,/?%#[]",
    kCFStringEncodingUTF8 );

这篇关于ObjC 中的 NSURL 编码的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-20 23:29