Url编码

在APP开发的过程中,经常需要传一些带有汉字的参数,这时候我们通常会调用 stringByAddingPercentEscapesUsingEncoding 这个api或者调用Core Foundation库的api来进行编码,现在这些api已经被废弃掉了,苹果推荐我们使用

stringByAddingPercentEncodingWithAllowedCharacters这个api来进行编码,这个api需要传一个

NSCharacterSet的参数,这个功能感觉变得强大了不少...这个参数怎么设置,点这儿有详细的介绍.

基于这个API,写了一个类别来进行url的编码和解码,效果和以前的stringByAddingPercentEscapesUsingEncoding一样.

贴代码~~

.h

#import <Foundation/Foundation.h>

@interface NSString (HJLURLEncoding)

- (NSString *)EncodedUrlString;

- (NSString *)DecodedUrlString;

@en

.m

#import "NSString+HJLURLEncoding.h"

@implementation NSString (HJLURLEncoding)
/**
 *  给url字符串进行utf-8编码
 *
 *  @return 编码后的字符串
 */
- (NSString *)EncodedUrlString
{
    NSString *CharacterSet = @"!*();+$,%#[] ";
    NSCharacterSet *allowedCharacters = [[NSCharacterSet characterSetWithCharactersInString:CharacterSet] invertedSet];
    NSString *encodedUrlString = [self stringByAddingPercentEncodingWithAllowedCharacters:allowedCharacters];
    [encodedUrlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
    return encodedUrlString;
}
/**
 *  给url字符串解码
 *
 *  @return 解码后的字符串
 */
- (NSString *)DecodedUrlString
{
    return [self stringByRemovingPercentEncoding];
}
@end


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值