2015-04-08 2 views
-1

Я пытаюсь удалить подстроку из строки в данных, загружаемых с помощью запроса REST, я использую «stringByReplacingOccurrencesOfString» для замены @ «Point» на @ »и хранения его в temp, но исходная переменная и временная переменная не обновляются.Проблема с удалением подстроки Objective-C

-(void)fetchURL:(NSURL *)url 
{ 

url = [NSURL URLWithString:@"http://team41.kmiller.io/api/getByLocation/Verizon%20Wireless/100/33.7/-84.0"]; 
NSURLRequest *request = [NSURLRequest requestWithURL:url]; 
[NSURLConnection sendAsynchronousRequest:request 
            queue:[NSOperationQueue mainQueue] 
         completionHandler:^(NSURLResponse *response, 
              NSData *data, NSError *connectionError) 
{ 
    if (data.length > 0 && connectionError == nil) 
    { 
     NSDictionary *greeting = [NSJSONSerialization JSONObjectWithData:data 
                    options:0 
                    error:NULL]; 

     if ([[greeting objectForKey:@"result"] isEqualToString:@"success"]) 
     { 
      NSString * temp; 
      for(NSDictionary* key in [greeting objectForKey:@"json"]) 
      { 
       NSString * strength = [key objectForKey:@"dbm_strength"]; 
       NSString * location = [key objectForKey:@"astext(location)"]; 
       temp = [location stringByReplacingOccurrencesOfString:@"Point" withString:@""]; 
       NSLog(@"%@",location); 
       NSLog(@"%@",temp); 
       break; 
      } 


      // TODO: Parse location and strength 
      // TODO: Update the records to database 
     } 
    } 
}]; 
} 
+1

Можете ли вы напечатать значение переменной 'location'? –

+2

Так что же выводит 'NSLog'? – Tommy

+0

был P в точке, заглавными в порядке? – Bigman

ответ

0

Ответ REST является POINT и вы пытаетесь заменить Point

фактический ответ

"POINT(33.78272 -84.40426)" 
+1

Большое спасибо, не могу поверить, что я делал такую ​​глупую ошибку. –

+0

Это происходит со всеми нами. – Vig

0

Хотя ответ VIG является правильным и указывает одна проблема, Eсть хуже one: subStringByReplacingOccurrencesOfString: возвращает новый NSString *. Он не изменяет получателя сообщения. Измененная строка хранится в temp, передается NSLog, затем отбрасывается. Этот код не сохранит результат нигде.

Смежные вопросы