如何拆分 NSString 到 NSDictionary
How to split NSString to NSDictionary
我正在从 Release
文件中获取 APT 存储库名称。
Origin: blah blah
Label: This is the name
Suite: stable
Version: 1.0
Codename: ios
Architectures: iphoneos-arm
Components: main
Description: blah blah
Release
文件看起来像这样,我想在 'Label:'.
之后得到 'This is the name'
所以,我想将这个字符串拆分到 NSDictionary。
像 objectForKey:@"Label"
一样使用它来获得 This is the name
我得到 Release
文件 AFNetworking
。
或者有什么好的方法可以拆分该字符串并仅获取名称?
- 首先用新行分隔文本。
- 然后对于每一行,用
:
分隔。
- 然后将第一部分设置为键,最后部分设置为字典的值。
像这样:
NSArray* rows = [originalString componentsSeparatedByString:@"\n"];
NSMutableDictionary* dictionary = [NSMutableDictionary new];
for (NSString* row in rows) {
NSString* key = [row componentsSeparatedByString:@": "].firstObject;
NSString* value = [row componentsSeparatedByString:@": "].lastObject;
[dictionary setObject:value forKey:key];
}
我正在从 Release
文件中获取 APT 存储库名称。
Origin: blah blah
Label: This is the name
Suite: stable
Version: 1.0
Codename: ios
Architectures: iphoneos-arm
Components: main
Description: blah blah
Release
文件看起来像这样,我想在 'Label:'.
所以,我想将这个字符串拆分到 NSDictionary。
像 objectForKey:@"Label"
一样使用它来获得 This is the name
我得到 Release
文件 AFNetworking
。
或者有什么好的方法可以拆分该字符串并仅获取名称?
- 首先用新行分隔文本。
- 然后对于每一行,用
:
分隔。 - 然后将第一部分设置为键,最后部分设置为字典的值。
像这样:
NSArray* rows = [originalString componentsSeparatedByString:@"\n"];
NSMutableDictionary* dictionary = [NSMutableDictionary new];
for (NSString* row in rows) {
NSString* key = [row componentsSeparatedByString:@": "].firstObject;
NSString* value = [row componentsSeparatedByString:@": "].lastObject;
[dictionary setObject:value forKey:key];
}