将字符串拆分为数组对象

时间:2012-08-27 10:24:56

标签: iphone objective-c nsstring nsmutablearray nsarray

我收到像这样的网络服务的回复

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

By,[dict objectForKey:@“Result”];我正在获得价值

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

那么,如何从NSSting格式获取数组格式的值。

例如。数组: - Test1,Test2,Test3,Test4,Test5

任何人都可以回复。

提前致谢。

5 个答案:

答案 0 :(得分:3)

尝试此代码:

NSMutableArray* arrCountryName = (NSMutableArray *)[yourString componentsSeparatedByString: @","];

答案 1 :(得分:1)

如果您完全按照格式化复制打印输出,则@"Result"键包含一个数组数组,其中包含一个元素,该元素已经是您想要的数组,所以这应该对您有用:

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

我认为这是数组中的数组的原因是它在列表周围显示了两级嵌套括号。

答案 2 :(得分:1)

在这里,您可以使用inputString并生成Array输出,如下所示:

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

如果您需要更多帮助,请告诉我们。

答案 3 :(得分:0)

试试这个:

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

   NSArray *arrValues = [dict objectForKey:@"Result"];
  //u have your array 
  for(NSString *value in arrValues)
  {
    NSLog(@"%@",values);
  }
}

答案 4 :(得分:0)

NSString *separatorString = @",";
NSScanner *aScanner = [NSScanner scannerWithString:yourString];
NSString *thingsScanned;
[aScanner scanUpToString:separatorString intoString:&thingsScanned];
NSLog(@"container: %@", thingsScanned);