【问题标题】:Storing String as a comma separated values将字符串存储为逗号分隔值
【发布时间】:2016-04-26 13:13:19
【问题描述】:

我如下迭代一个 NSDictionary 并将值分配给一个字符串,如果它包含一个字符串 htttp。

for(id key in photos){

                     //NSLog(@"key=%@ value=%@", key, [photos objectForKey:key]);
    if ([[[photos objectForKey:key] stringByAppendingString: key] containsString:@"http"]){
    photoUrl = [[photos objectForKey:key] stringByAppendingString: key];
                     }
    NSLog(@"etf %@",photoUrl);

 }
  1. 如何创建逗号分隔的 url 并将其分配给 photoUrl。例如,一个 nsdictionary 可能包含多个 url,所以我想将所有 url 连接为逗号分隔值并稍后将其分配给 photoUrl?
  2. 以后如何检索这些逗号分隔值?

【问题讨论】:

  • photos 是字典中的键列表吗?
  • 照片是 NSDictionary?你是如何遍历字典的?只有当您拥有字典的键数组时,您才能遍历字典
  • 喜欢这样的“a,b,c,d....”?
  • 是的,我想将其作为逗号分隔值并稍后解析
  • 我基于key进行迭代

标签: ios objective-c nsstring nsdictionary


【解决方案1】:

在循环中创建一个数组,

NSArray *urls = [NSMutableArray array];
for (id key in photos) {
  NSString *photoUrl = [[photos[key] stringByAppendingString: key]
  if (photoUrl containsString:@"http"]){
    urls appendItem[photoUrl];
  }
}

然后你可以创建一个 CSV 字符串

NSString *csvUrls = [urls componentsJoinedByString:@","];

然后分解回来

NSArray *urls = [csvUrls componentsSeparatedByString:@","];

【讨论】:

    【解决方案2】:

    如果你是从某个数组中获取的

    NSString *joinedComponents = [array componentsJoinedByString:@","];

    否则你可以遍历一些你自己的集合

    NSMutableString * string1 = [[NSMutableString alloc] initWithString:@"this is my string"];
    
    [string1 appendString:@" with more strings attached"];
    

    同样,您可以稍后将它们分开

    NSArray *items = [string1 componentsSeparatedByString:@","];
    

    将键值保存在字符串中并制作您的网址。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-08
      • 1970-01-01
      相关资源
      最近更新 更多