这个 "stringByAddingPercentEscapesUsingEncoding" 已经过时了,我想用更新的方法替代它。
NSString *encodedString = [modalData.imageURL stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
这个 "stringByAddingPercentEscapesUsingEncoding" 已经过时了,我想用更新的方法替代它。
NSString *encodedString = [modalData.imageURL stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
请尝试下面这行代码:
NSString *encodedString = [modalData.imageURL stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLHostAllowedCharacterSet]];
stringByAddingPercentEncodingWithAllowedCharacters:
该方法返回一个新字符串,将接收器中不在指定字符集中的所有字符替换为百分号编码的字符。
可以将字符集传递给- stringByAddingPercentEncodingWithAllowedCharacters
:
+ (NSCharacterSet *)URLUserAllowedCharacterSet;
+ (NSCharacterSet *)URLPasswordAllowedCharacterSet;
+ (NSCharacterSet *)URLHostAllowedCharacterSet;
+ (NSCharacterSet *)URLPathAllowedCharacterSet;
+ (NSCharacterSet *)URLQueryAllowedCharacterSet;
+ (NSCharacterSet *)URLFragmentAllowedCharacterSet;
参考文献: https://developer.apple.com/reference/foundation/nsstring/1411946-stringbyaddingpercentencodingwit
该方法将字符串转换为百分号编码形式的字符串。它将使用指定的编码来替换在URL中不被允许的字符,例如空格和标点符号。这对于生成URL参数非常有用。NSString *url = [modalData.imageURL stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLFragmentAllowedCharacterSet]];
NSString *encodedString = [modalData.imageURL stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLHostAllowedCharacterSet]];