0

我在文件中有以下文本.txt::

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
    <dict>
            <key>aa</key>
            <string>2012-07-19 11:16:00</string>
    </dict>
    <dict>
            <key>bb</key>
            <string>2012-07-19 11:16:02</string>
    </dict>
    <dict>
            <key>cc</key>
            <string>2012-07-19 11:16:05</string>
    </dict>
    <dict>
            <key>dd</key>
            <string>2012-07-19 11:16:07</string>
    </dict>
    <dict>
            <key>aa</key>
            <string>2012-07-19 11:16:10</string>
    </dict>
    <dict>
            <key>bb</key>
            <string>2012-07-19 11:16:13</string>
    </dict>

我使用以下代码行将这些内容放入一个数组::

self.kkkk = [NSMutableArray array];

NSString *Dir = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents"];
NSString *filePath = [Dir stringByAppendingPathComponent:@"abcd.txt"];

NSArray *array = [NSArray arrayWithContentsOfFile:filePath ];
kkkk = [[NSMutableArray alloc] init];
for (NSDictionary *dict in array) {
    [kkkk addObjectsFromArray:[dict allKeys]];

}

在添加内容时,我希望只输入 aa、bb、cc 和 dd 的唯一值。为此,我想将他们的一个条目连同他们的最新时间戳一起放入数组 kkkk 中。

我怎样才能做到这一点 ??特别是两个时间戳的比较..有人可以帮我吗?谢谢并恭祝安康。

4

1 回答 1

1

首先从字典中获取所有对象,然后检查以下内容

for (NSDictionary *dict in array) 
{
    if(![kkkk containsObject:objectFromDictionary])
    {
       [kkkk addObjectsFromArray:[dict allKeys]];
    }
}

这可能有效,但您应该一个一个地添加对象,而不是添加所有键。

于 2012-07-19T06:23:18.277 回答