2011-12-13 121 views
8

在名爲字典dict關鍵值對是:如何從NSDictionary獲取密鑰對象?

「粉\ NEWLINENEWLINE此功能窗口」= 「A在westindies模型。」;

併發送objectForKey:我得到像「alba's window」這樣的字符串。當我發送如下:

[dict objectForKey:alba's window];

我沒有得到任何東西,它顯示爲空。

+2

如果你什麼'[字典objectForKey:@「阿爾巴的窗口」];'或' [dict objectForKey:@「alba \ u2019s window」];'? – Cyrille

回答

16

對於初學者來說,你可能要做出一個實際的字符串,像這樣:

[dict objectForKey:@"alba's window"]; 

還要注意的是\U2019';但是,完全不同。

更一般地說,對字典鍵堅持[a-zA-Z0-9]+可能是一個好主意,除非您使用完全相同的字符串作爲鍵以編程方式插入和檢索。

+0

我正在使用only.it僅顯示差異here.tell我。 – Univer

+4

我不明白你指的是什麼,或者你確實在說什麼。直到我這樣做,不幸的是我無法幫助你。 –

+0

我得到的解決方案'不會在mac支持,所以我換成'那麼它工作正常 – Univer

2

確保您的dict不爲空;將消息發送給空對象將會自動失敗並返回null

檢查您的鍵/值的另一種方法是簡單地NSLog(@"%@",dict);,這將顯示字典的內容。請注意,當輸出值包含空格時,此輸出僅顯示引號。

此外,請確保您使用的字符串與密鑰對相同 - 它看起來像除了"alba's window"之外還使用"alba\U2019s window"

5

由於iOS6的開始,設置和訪問對象從一個NSDictionary密鑰的方便的方法是:

//Setting the object in NSMutableDictionary 
dictionary[@"someKey"] = @"someString"; 

//Accessing the object 
NSString *str = dictionary[@"someKey"];