我正在开发包含HTTP请求和响应的iphone应用程序。
响应的格式是与Java“属性”流格式兼容的键/值格式。
我想将响应存储到NSDictionay中。你能建议我这样做吗?
谢谢。
sangee
感谢guyz快速回复!!!
是他们在NSSdictionay中存储它们的任何其他方法吗?
我只想将相册名称和描述存储在如下数组中:
mutablearray = [wrwr, dsf, my album];
如果可能或不可以,请你告诉我吗?
再次感谢!!!
这是我的HTTP请求得到的响应......
GR2PROTO
debug_album= debug_gallery_version= debug_user=admin debug_user_type=Gallery_User debug_user_already_logged_in= server_version=2.12 status=0 status_text=Login successful.
#GR2PROTO debug_album= debug_gallery_version= debug_user=admin debug_user_type=Gallery_User debug_user_already_logged_in=1
album.name.1=wrwr album.title.1=wrwr album.summary.1= album.parent.1=0 album.resize_size.1=640 album.thumb_size.1=100 album.perms.add.1=true album.perms.write.1=true album.perms.del_item.1=true album.perms.del_alb.1=true album.perms.create_sub.1=true album.info.extrafields.1=Description
album.name.2=dsf album.title.2=dsf album.summary.2= album.parent.2=0 album.resize_size.2=640 album.thumb_size.2=100 album.perms.add.2=true album.perms.write.2=true album.perms.del_item.2=true album.perms.del_alb.2=true album.perms.create_sub.2=true album.info.extrafields.2=Description
album.name.3=my album album.title.3=my album album.summary.3= album.parent.3=0 album.resize_size.3=640 album.thumb_size.3=100 album.perms.add.3=true album.perms.write.3=true album.perms.del_item.3=true album.perms.del_alb.3=true album.perms.create_sub.3=true album.info.extrafields.3=Description
答案 0 :(得分:2)
答案 1 :(得分:0)
查看NSStream和Stream Programming Guide for Cocoa。
在Java完全集成到Cocoa的那一天,NSStream映射到Java流。它仍然可能。 IIRC,(已经有一段时间了)NSStream将从Java流中返回一个正确填充的NSDictionary。
编辑:
看起来返回的文本只是一个空格分隔的哈希,它是字典的Java版本。它采用key = value space key = value的形式。唯一棘手的部分是一些哈希是嵌套的。
例如,第一行是嵌套的:
debug_album{
debug_gallery_version{
debug_user=admin
debug_user_type=Gallery_User
debug_user_already_logged_in{
server_version=2.12
status=0
status_text=Login successful.
}
}
}
你需要一个递归扫描程序来解析它。 “key = space”模式表示嵌套字典。