2011-07-16 4 views
1

これは私のコードです:私が得るNSDictionaryは常に二重引用符で囲まれた出力を出しますか?

//elementsValues is type of NSDictionary. currentElementValue is type of NSString. 
//resultArray is type of NSArray. 
//elementName = [[NSString stringWithFormat:@"SignOnResult"]; 

[self.elementsValues setObject:self.currentElementValue forKey:elementName]; 
[self.resultArray addObject:self.elementsValues]; 
NSLog(@"%@",[resultArray valueForKey:@"SignOnResult"]); 

出力が「」の間で印刷されます。 NSDictionaryは常に出力を出力しますか? 文字列を ""にしたくありません。

あなたはそれがあなたの空 NSArrayを返します resultArrayインスタンスで valueForKey:を呼び出すために間違っている
+3

あなたは間違っています、resultArrayは配列なので、配列 – iMOBDEV

+0

のobjectAtIndexメソッドを使用して配列からNSDictionaryを取得する必要があります。XMLから取得した文字列は '@" "'である可能性が高いので、 。つまり、 'NSLog'文は単一の要素配列をロギングする必要があります。 –

答えて

0

NSLog(@"%@",[resultArray valueForKey:@"SignOnResult"]); // wrong statement 

はここ

NSLog(@"%@",[[resultArray objectAtIndex:dictionaryIndex] valueForKey:@"SignOnResult"]); 

dictionaryIndexように変更してみます、整数型であり、有効なインデックスと辞書オブジェクトをresultArrayに指定します。

+0

['valueForKey:'](http://developer.apple.com/library/mac/documentation/cocoa/reference/foundation/Classes/NSArray_Class/NSArray.html#//apple_ref/occ/instm/NSArray)を呼び出すことができます。/valueForKey :)。 –

+0

@Deepak: 'dictionary'インスタンスの' valueForKey: 'を' [resultArray objectAtIndex:dictionaryIndex] 'で返します。 – Jhaliya

+0

' valueForKey: 'はNSArrayの有効なメッセージです。リンクは 'NSArray'リファレンスに移動します。すべてのメンバーに対して 'valueForKey:'を呼び出し、配列を返します。 –

0
NSDictionary *dictionary = [self.resultArray objectAtIndex:0]; 

NSLog(@"%@",dictionary); 
関連する問題