2011-08-02 23 views
0

當我使用SBJsonParser時,我沒有得到可以使用的NSDictionary。下面是我對我的請求返回的JSON字符串中使用的代碼:SBJsonParser沒有正確返回,我該如何處理這些數據?

SBJsonParser *parser = [[SBJsonParser alloc] init]; 
NSDictionary *stuff = [parser objectWithString:jsonString error:nil]; 

當我打印出它創造我看到了詞典: { 會議=( ( 「演示」, 「演示數據庫「 ), ( 」開發「, 」開發數據庫「 ), ( 」測試「, 」測試數據庫「 ), ( T2011, 「T 2011」 ) ( 「C2010」, 「C2010」 ) ); }

我試着訪問一些數據,但我無法這樣做,因爲它無法識別我使用的任何密鑰。我將如何訪問此字典中的數據?或者這是不正確的?

謝謝!

回答

0

根據JSON的結構,返回類型是NSDictionary或NSArray。在你的情況下,數據可能被解釋爲可能作爲NSArray返回給你的鍵值對的數組。

編輯: (如下面的評論中所見),解析結果作爲NSDictionary返回,其中NSArray爲關鍵「會議」。 NSArray反過來並不存儲關鍵值對,而是其他NSArrays都有兩個元素。

+0

我試過一個數組,但我無法訪問數據objectAtIndex –

+0

如果你傳遞一個NSError **,你會得到一個錯誤嗎?如果沒有,你可以設置一個斷點並檢查返回的數據嗎? –

+0

我沒有收到錯誤。我得到了我對Json字符串的期望,但NSDictionary沒有正確創建。 Json字符串是:{「會議」:[[「演示」,「演示數據庫」],[「dev」,「開發數據庫」],[「測試」,「測試數據庫」],[「T2011」 T 2011「],[」C2010「,」C2010「]]} –