将NSString转换为键值对
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将NSString转换为键值对相关的知识,希望对你有一定的参考价值。
我有来自服务器的响应,它是NSString,看起来像这样
resp=handshake&clientid=47D3B27C048031D1&success=true&version=1.0
我想将它转换为键值对,如字典或数组。我找不到任何有用的内置函数来解码NSString到NSdictionary并替换&with space并没有解决我的问题,任何人都可以给我任何想法或是否有任何函数来解决这个问题?
答案
这应该工作(在我的头顶):
NSMutableDictionary *pairs = [NSMutableDictionary dictionary];
for (NSString *pairString in [str componentsSeparatedByString:@"&"]) {
NSArray *pair = [pairString componentsSeparatedByString:@"="];
if ([pair count] != 2)
continue;
[pairs setObject:[pair objectAtIndex:1] forKey:[pair objectAtIndex:0]];
}
或者你可以使用NSScanner
,但对于像查询字符串一样短的东西,额外的几个数组不会产生性能差异。
以上是关于将NSString转换为键值对的主要内容,如果未能解决你的问题,请参考以下文章
将 json 格式的键值对转换为以符号为键的 ruby 哈希的最佳方法是啥?
将 json 字典列转换为键值对行(Redshift+Postgresql)