在Objective-c进行网络编程时,经常需要把数据转换成URLEncoding编码,如对+号编码后,变成%2b.这里我们给出一种实现.
<span style="font-family:SimSun;font-size:13px;color:#330033;">//NSString+URLEncoding.h #import @interface NSString (URLEncodingAdditions) - (NSString *)URLEncodedString; - (NSString *)URLDecodedString; @end</span>
<span style="font-family:SimSun;font-size:13px;color:#330033;">//NSString+URLEncoding.m #import "NSString+URLEncoding.h" @implementation NSString (OAURLEncodingAdditions) - (NSString *)URLEncodedString { NSString *result = (NSString *) CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault, (CFStringRef)self, NULL, CFSTR("!*'();:@&=+$,/?%#[] "), kCFStringEncodingUTF8); [result autorelease]; return result; } - (NSString*)URLDecodedString { NSString *result = (NSString *) CFURLCreateStringByReplacingPercentEscapesUsingEncoding(kCFAllocatorDefault, (CFStringRef)self, CFSTR(""), kCFStringEncodingUTF8); [result autorelease]; return result; } @end</span>
因为是扩展了NSString,使用的时候就比较简单了,首先在使用本类的文件中引入NSString+URLEncoding.h头文件,然后直接用NSString中的URLEncodedString与URLDecodedString方法,如:
NSString *urlToken = [token URLEncodedString];
相关推荐
在IT行业中,Objective-C(简称Obj-C)是一种面向对象的编程语言,它是C语言的超集,主要用于苹果的iOS和macOS平台开发。在Windows环境下,尽管不是Objective-C的原生平台,但开发者仍然可以通过一些工具和配置来...
### Obj-C2.0大全知识点解析 #### 一、Obj-C2.0简介与特性 Obj-C2.0是Objective-C编程语言的一个重要版本,它引入了许多新的特性和改进,旨在提高开发效率和代码质量。Obj-C2.0在继承Objective-C原有特性的同时,...
OBJ是一种通用的3D模型文件格式,广泛用于不同3D软件之间的数据交换。这个项目的重点是通过.NET C#编程语言实现这一导出过程,并且在导出时能减小文件大小,保持信息精简但不失关键细节,以实现轻量化。 描述中提到...
"模型格式转换工具(osgb-obj-ive)"就是一款专门用于处理这种问题的实用工具,它能帮助用户在osgb、obj、ive等格式之间进行转换。以下是对这些格式以及转换工具的详细介绍: 1. osgb格式: OpenSceneGraph Binary ...
在后端开发中,尤其是涉及到数据库操作时,经常需要对对象进行复杂的更新操作。例如,在Django框架中,数据模型的实例通常需要更新多个字段,有时这些字段可能存在于嵌套的结构中。dj-obj-update库提供了一种简洁的...
SVGQuartzRenderer is a basic SVG renderer written in Obj-C that uses CoreGraphics to render SVG files. The goal of SVGQuartzRenderer is to be a simple drop-in SVG renderer that is compatible with the ...
例如,如果有一个嵌套对象`{a: {b: {c: 1}}}`,使用"obj-flatten"后,会得到`{a.b.c: 1}`。这样,原本需要通过`obj.a.b.c`来访问的值,现在只需要通过`obj['a.b.c']`即可。 应用场景: 1. 数据序列化:在将对象发送...
2. **基本操作**:提供基本的3D几何体创建,如立方体、球体、圆柱体等,以及对现有模型的移动、旋转和缩放操作。 3. **顶点编辑**:允许用户手动调整模型的顶点、边和面,实现精确的形状控制。 4. **纹理映射**:...
SVGQuartzRenderer is a basic SVG renderer written in Obj-C that uses CoreGraphics to render SVG files. The goal of SVGQuartzRenderer is to be a simple drop-in SVG renderer that is compatible with the ...
OBJ格式是一种广泛使用的3D模型文件格式,由Wavefront Technologies公司开发,主要用于在3D图形领域交换数据。这个查看器使用户能够方便地浏览和检查OBJ文件,从而无需依赖专业的3D建模软件。 3D建模是计算机图形学...
OBJ文件是一种广泛使用的3D模型数据格式,由Wavefront Technologies公司开发,主要用于存储3D模型的几何信息,包括顶点、边、面等元素。它还可以包含纹理坐标、法线向量、颜色信息以及关于对象的其他元数据。在"OBJ-...
理解STEP格式涉及到对ISO 10303标准的理解,以及如何处理AP203(基本产品数据)和AP214(详细工程定义)等应用协议。 OBJ文件格式则是一种简单的、无压缩的、基于文本的3D模型格式,广泛用于3D建模软件和游戏引擎中...
Yahoo为了帮助开发者更方便地进行这种迁移,开源了一个在线工具——"swift-Yahoo开源的在线obj-c->swift工具"。这个工具允许开发者直接将Objective-C代码粘贴到网页中,然后自动生成对应的Swift代码。这大大简化了...
Python库由一组预定义的函数和类组成,可以被其他Python程序导入并使用,以实现特定的功能,如数据处理、网络通信、图形界面等。Python库极大地丰富了Python的功能,降低了开发者的编程难度。 在压缩包子文件的文件...
c语言实现aes ecb模式加密,可以和java,c#,obj-c互相 加,解密。包含base64编码,urlEncode编码 注意,该算法里面的密文是转换成16进制的字串,如果不要16进制,可自行转换,内的函数。 vc6,vs2008,可编译。
本篇文章将围绕lha压缩技术展开,结合其C语言源代码,探讨其工作原理,并浅析如何使用Objective-C进行实现。 lha压缩算法的核心在于它的滑动窗口技术和哈夫曼编码。滑动窗口技术允许程序对输入数据流进行连续的局部...
在Python中,库是一种预编写好的代码模块,它们提供了各种功能,帮助开发者快速实现特定任务,如网络通信、数据处理、科学计算等。"libobj-12"可能是一个专注于特定领域或具有特定功能的库,但具体的功能需要解压并...
总结来说,"obj-file-relocation.rar_obj"的解析涉及了对可重定位文件的基本理解和实践应用,特别是对重定位过程的深入分析,这对于理解编译器和链接器的工作原理,以及排查和修复链接错误具有重要意义。通过学习...
OBJ文件格式支持多种类型的几何数据表示,包括多边形网格和自由形式曲面等。本文档旨在详细介绍OBJ文件格式的各项特性及其在Wavefront Advanced Visualizer中的应用。 #### 二、OBJ文件格式介绍 **1. 文件结构** ...
Python库可以包含各种功能,如数据处理、网络通信、科学计算、图形界面等。 对于压缩包内的文件"obj-92",如果没有更具体的信息,我们假设它可能是以下几种情况之一: 1. **源代码目录**:包含了`__init__.py`...