0

嗨,我有两个数组,一个是已解析数据,每个单元格有多个条目(文件夹名称和 ID)我希望将此数据保存到另一个数组中,就像它存储在第一个数组中一样

   FilteredData = [[NSMutableArray alloc]initWithArray:[ParsedData ValueForKey:@"FolderName"]];

   SearchData = [[NSMutableArray alloc]initWithArray:FilteredData];

这就是我一直在尝试的,每个条目中包含字典的数据是 ParsedData,而我必须在其中复制这些项目的数组是 SearchData。

包含字典的数组(解析数据)如下所示

 PARSED DATA (
    {
    CreatedBy = 1;
    FolderName = Posteingang;
    ID = 13000;
    ParentID = 0;
},
    {
    CreatedBy = 1;
    FolderName = Freigaben;
    ID = 13001;
    ParentID = 0;
},

从这个数组中,我需要获取 FolderName 和 ID 并将它们放在 SearchData 数组中

SearchData (
    Posteingang;
    13000;     
    Freigaben;
    13001;
)

我希望这个问题现在很清楚

在此处输入图像描述

4

3 回答 3

1

检查这个,

NSMutableArray *searchData = [NSMutableArray new];
    for(NSDictionary *dict in ParsedDataArray){//here ParsedDataArray  means PARSED DATA array name
        NSDictionary *tempDict=[[NSDictionary alloc]initWithObjectsAndKeys:[dict ValueForKey:@"FolderName"],@"FolderName",[dict ValueForKey:@"ID"],@"ID" nil], 

        [searchData addObject:dict];
    }
于 2013-05-01T10:27:57.690 回答
1

好像你拼错了方法名,应该是:

dictionaryWithObjectsAndKeys:

注意 Object 后面的“s”。

于 2013-05-01T12:12:20.527 回答
0

我想要一个包含文件夹名称和 id 的数组中的字典

因此,您可以使用以下方法获取它:

NSMutableArray *searchData = [NSMutableArray new];
for(NSDictionary *dict in parsedDataArray){
    NSDictionary *tempDict=@{@"FolderName":dict[@"FolderName"], 
                             @"ID":dict[@"ID"]};
    [searchData addObject:tempDict];
}

编辑:

@[@"key:@"object"]是新的字典文字。

如果您使用的是 Xcode 4.3 或更早版本,则需要执行以下操作:

NSDictionary *tempDict=@{@"FolderName":dict[@"FolderName"], 
                                 @"ID":dict[@"ID"]};

方法,

NSDictionary *tempDict=[NSDictionary dictionaryWithObjectsAndKeys:[dict objectForKey:@"FolderName"], @"FolderName",[dict objectForKey:@"ID"],@"ID", nil];
于 2013-05-01T09:26:47.003 回答