2

このようなWebサービスから応答があります

Result =     (
            (
        "Test1",
        "Test2",
        "Test3",
        "Test4",
        Test5
    )
);

によって、[dict objectForKey:@ "Result"]; 私は価値を得ています

(
        "Test1",
        "Test2",
        "Test3",
        "Test4",
        Test5
    )

では、どうすればNSSting形式から配列形式の値を取得できますか。

たとえば。配列:-Test1、Test2、Test3、Test4、Test5

誰でも返信できますか。

前もって感謝します。

4

5 に答える 5

3

このコードを試してください:

NSMutableArray* arrCountryName = (NSMutableArray *)[yourString componentsSeparatedByString: @","];
于 2012-08-27T10:31:20.977 に答える
1

書式設定どおりに印刷出力をコピーした場合、@"Result"キーには、すでに必要な配列である単一の要素を持つ配列の配列が含まれているように見えるので、これでうまくいくはずです。

NSArray *res = [[dict objectForKey:@"Result"] objectAtIndex:0];

これが配列内の配列であると思う理由は、リストの周りに2つのレベルのネストされた括弧が表示されるためです。

于 2012-08-27T10:45:24.677 に答える
1

ここでは、inputStringを使用して、次のように配列出力を生成できます。

NSString *inputString = @"Test1,Test2,Test3,Test4";
NSMutableArray* outputArray = [[NSMutableArray alloc] init];
outputArray = [inputString componentsSeparatedByString: @","];

さらに助けが必要な場合は、私に知らせてください。

于 2012-08-27T11:00:56.927 に答える
0

これを試して:

if([dict objectForKey:@"Result"] isKindofClass:[NSArray class]])
{

   NSArray *arrValues = [dict objectForKey:@"Result"];
  //u have your array 
  for(NSString *value in arrValues)
  {
    NSLog(@"%@",values);
  }
}
于 2012-08-27T10:32:42.397 に答える
0
NSString *separatorString = @",";
NSScanner *aScanner = [NSScanner scannerWithString:yourString];
NSString *thingsScanned;
[aScanner scanUpToString:separatorString intoString:&thingsScanned];
NSLog(@"container: %@", thingsScanned);
于 2012-08-27T10:51:10.250 に答える