2012-01-03 5 views
0

ここではhttps://github.com/Insert-Witty-Name/XML-to-NSDictionaryというXMLReaderプラグインを使用してXMLデータをNS辞書に変換していますが、辞書がどのように設定されているのか混乱しています。ここで私が与えられていますものです:このNSDictionaryは設定方法が有効ですか? XMLをNSDictionaryプラグインに使用

{ 
    response =  { 
     "@status" = ok; 
     authentication =   { 
      "@description" = "The username you provided is valid."; 
      "@login" = USERNAME; 
      "@response" = success; 
      "@user_id" = USERID; 
     }; 
    }; 
} 

私は、何かを応答オブジェクトを取得し、キーは成功に等しいかどう言おうとしていますが、私はこの辞書をしても正しく設定されているかはわかりません。

答えて

0

キーとしての@namesの奇妙さにもかかわらず、有効です。

あなたは簡単に[ objectForKey:@"authentication"]、その後[ objectForKey:@"@response"][yourString isEqualToString:@"success"]をチェックするために取得するには、あなたの要素の応答([ objectForKey:@"response"])を求めることができます。

編集:追加の例

最近気付いたことがあります。カンマはどこにあったはずだったのですが、それがちょうどタイプミスなどのものであることを望みましょう。

ご不明な点がある場合は、常にNSLog(@"%@", [yourFirstDictionary allKeys]);を入力して、それらが有効なキーであることを確認してください。

例のために、最初のオブジェクトmyDictを呼び出してみましょう。

+0

これは機能しているようです。私は '[objectForKey:@" authentication "]'を実行するとnullになりますので、 '[objectForKey:@" response "]'で始まりましたが、次に次のものに移動します(認証?) – davis

+0

応答が応答でラップされているので混乱します。 – davis

+0

メインオブジェクトが辞書そのものであるとすると、移動する前に[objectForKey:@ "response"]で始める必要があります。そして、2番目のレスポンスで[objectForKey @ "@ response"]を求めます。 –

関連する問題