#objective-c #xml #nsstring #nsmutablearray #touchxml
#objective-c #xml #nsstring #nsmutablearray #touchxml
Вопрос:
Я могу успешно проанализировать содержимое XML-файла с помощью TouchXML, но когда я пытаюсь прочитать отдельную строку NSString из NSMutableArray, в котором хранится проанализированное содержимое, приложение iPhone выходит из строя.
Мой NSLog показывает мне, что файл был проанализирован должным образом, выдавая этот результат:
(
{
href = "mms://a19349.l412964549958.c41245496.f.lm.akamaistream.net/D/194359/4125596/v0001/reflector:49944";
},
{
href = "mms://a4322.l4129624350471.c414645296.a.lm.akamaistream.net/D/473432/4129566/v0001/reflector:546441";
} )
Вот код, который я использую для синтаксического анализа:
NSMutableArray *res = [[NSMutableArray alloc] init];
.... Parsing happens here ....
Затем я пытаюсь извлечь строку из NSMutableArray, используя этот код (и приложение вылетает при попытке прочитать эту строку кода, размещенную ниже NSMutableString *string1 = [NSMutableString stringWithString:url];
NSString *url = [[NSString alloc] init];
url = [res objectAtIndex:0];
NSMutableString *string1 = [NSMutableString stringWithString:url];
[string1 deleteCharactersInRange: [string1 rangeOfString: @"href = "]];
[string1 deleteCharactersInRange: [string1 rangeOfString: @";"]];
NSLog(@"Clean URL: %@", string1);
Пожалуйста, как я могу решить эту проблему? Спасибо!
Ответ №1:
TouchXML возвращает вам массив NSDictionaries. Чтобы извлечь строку, вам нужно взять значение из этого NSDictionary:
NSString *url = [[res objectAtIndex:0] objectForKey:@"href"];