Ios 如何在objective-c中对日期进行url编码

Ios 如何在objective-c中对日期进行url编码,ios,objective-c,nsdate,url-encoding,Ios,Objective C,Nsdate,Url Encoding,我需要对日期参数进行url编码,以便将其发送到api 例如,如果我有一个日期2013-08-01 00:00:00+0000,我需要通过2013-08-01+00%3a00%3a00+%2b0000发送此日期 我怎样才能做到呢 这对我来说一直很有效 NSDate *myDate; // this date should be encoded NSDateFormatter *df = [[NSDateFormatter alloc] init]; df.dateFormat = @"yyyy-M

我需要对日期参数进行url编码,以便将其发送到api

例如,如果我有一个日期
2013-08-01 00:00:00+0000
,我需要通过
2013-08-01+00%3a00%3a00+%2b0000
发送此日期


我怎样才能做到呢

这对我来说一直很有效

NSDate *myDate; // this date should be encoded
NSDateFormatter *df = [[NSDateFormatter alloc] init];
df.dateFormat = @"yyyy-MM-dd hh:mm:ss ZZZ";
NSString *dateString = [df stringFromDate:myDate];
NSString *encodedDate = 
  [dateString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSString *encodedDate = (__bridge NSString *)CFURLCreateStringByAddingPercentEscapes(NULL, (CFStringRef)dateString, NULL, (CFStringRef)@"!*'();:@&=+$,/?%#[]", kCFStringEncodingUTF8);

将其转换为NSString,然后像处理任何参数一样对该字符串进行url编码,然后在构建url或发布参数时使用该编码字符串。你到底在哪里有问题?你能分享一些代码吗?我正按照蒙迪的建议做。我输入了NSDate日期,得到了2013-08-08%2002:00:09%20+0200。“:”不是url安全的。我正是这么做的。我输入了NSDate日期,得到了2013-08-08%2002:00:09%20+0200。“:”不是url安全的。