在Objective-C中解码URL,将%7B转换为{和%22转换为"

时间:2015-10-13 04:47:05

标签: objective-c json nsstring

如何使用Objective C和Xcode将%7B转换为{%22转换为"

我的jsonString格式为:%7B%22maxTemp%22:%2235%22

2 个答案:

答案 0 :(得分:0)

看起来您需要对该字符串进行URL解码 - 也许following post可能有用。

答案 1 :(得分:0)

我认为您的<CKEditor:CKEditorControl ID="CKEdMainPageDescriptionWebsiteMobileappAr" BasePath="ckeditor/" runat="server" Width="100%" Toolbar="Basic" ContentsLangDirection="Rtl" ToolbarBasic="|Bold|Italic|Underline|Strike|-|NumberedList|BulletedList|Outdent|Indent|-|JustifyLeft|JustifyCenter|JustifyRight|JustifyBlock| |Styles|-|Format|-|Font|-|FontSize| / |Link|Unlink|-|TextColor|-|Undo|Redo|Cut|Copy|Paste|PasteText|PasteFromWord|"> </CKEditor:CKEditorControl> 存在问题。

以下是将响应数据转换为NSJSONSerialization的示例:

JSONObject

关于您的问题,使用[NSJSONSerialization JSONObjectWithData:[YourResponseData] options:NSJSONReadingAllowFragments error:&error]; 可以解决问题:

stringByReplacingPercentEscapesUsingEncoding

来自苹果documentation

  

返回值通过在接收器中替换所有的新字符串   百分比以匹配的字符转义,由...确定   给定编码编码。如果转换不是,则返回nil   例如,百分比转义可能不会产生字节序列   合法编码。

另外,请注意,在iOS 9.0中不推荐使用此功能,您可能希望了解该功能。

输出:

NSString *string = [@"%7B%22maxTemp%22:%2235%22" stringByReplacingPercentEscapesUsingEncoding:NSASCIIStringEncoding];

NSLog(@"%@", string);