Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Парсинг XML 
:(
    Опции темы
Lefthandboy
Дата 30.6.2013, 22:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 3.12.2012

Репутация: нет
Всего: нет



Приветствую форумчан! 
 Работать с iOS и Objective C начал три дня назад, столкнулся с такой проблемой.
Есть два xml-файла:
Код

<item>
<title>
Покупайте в Vivasan – получайте дисконтную карту в подарок.
</title>
<link>
http://tulparcenter.kz/%d0%bf%d0%be%d0%ba%d1%83%d0%bf%d0%b0%d0%b9%d1%82%d0%b5-%d0%b2-vivasan-%d0%bf%d0%be%d0%bb%d1%83%d1%87%d0%b0%d0%b9%d1%82%d0%b5-%d0%b4%d0%b8%d1%81%d0%ba%d0%be%d0%bd%d1%82%d0%bd%d1%83%d1%8e-%d0%ba%d0%b0/
</link>
<comments>
http://tulparcenter.kz/%d0%bf%d0%be%d0%ba%d1%83%d0%bf%d0%b0%d0%b9%d1%82%d0%b5-%d0%b2-vivasan-%d0%bf%d0%be%d0%bb%d1%83%d1%87%d0%b0%d0%b9%d1%82%d0%b5-%d0%b4%d0%b8%d1%81%d0%ba%d0%be%d0%bd%d1%82%d0%bd%d1%83%d1%8e-%d0%ba%d0%b0/#comments
</comments>
<pubDate>Tue, 18 Jun 2013 11:45:23 +0000</pubDate>
<dc:creator>Ассем</dc:creator>
<category>
<![CDATA[ Новости ]]>
</category>
<guid isPermaLink="false">http://tulparcenter.kz/?p=1455</guid>
<description>
<![CDATA[
Компания “Vivasan” представляет натуральные лечебно-косметические средства, биологически активные добавки и декоративную косметику из Швейцарии. Акция! При покупке 5 разных продуктов вы получаете дисконтную карту в подарок. Дисконтная карта в размере 28%. Vivasan находиться на 2 этаже, правое крыло.
]]>
</description>
<wfw:commentRss>
http://tulparcenter.kz/%d0%bf%d0%be%d0%ba%d1%83%d0%bf%d0%b0%d0%b9%d1%82%d0%b5-%d0%b2-vivasan-%d0%bf%d0%be%d0%bb%d1%83%d1%87%d0%b0%d0%b9%d1%82%d0%b5-%d0%b4%d0%b8%d1%81%d0%ba%d0%be%d0%bd%d1%82%d0%bd%d1%83%d1%8e-%d0%ba%d0%b0/feed/
</wfw:commentRss>
<slash:comments>0</slash:comments>
</item>


второй:
Код

<catalogItems>
    <item title="Январь 2013 - New" file="12-13.pdf" hash="3f153d2a988a623f2be500c485bca757" />
</catalogItems>


первый код без каких-либо проблем парсится подобным кодом:
Код


- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict
{
    if(choose == false)
    {
    //NSLog(@"found this element: %@", elementName);
    currentElement = [elementName copy];
    if ([elementName isEqualToString:@"item"]) {
        // clear out our story item caches...
        item = [[NSMutableDictionary alloc] init];
        currentTitle = [[NSMutableString alloc] init];
        currentDate = [[NSMutableString alloc] init];
        currentSummary = [[NSMutableString alloc] init];
        currentLink = [[NSMutableString alloc] init];}
    }
    
}

- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName{
    if(choose == false)
    {
    //NSLog(@"ended element: %@", elementName);
    if ([elementName isEqualToString:@"item"]) {
        // save values to an item, then store that item into the array...
        [item setObject:currentTitle forKey:@"title"];
        [item setObject:currentLink forKey:@"link"];
        [item setObject:currentSummary forKey:@"summary"];
        [item setObject:currentDate forKey:@"date"];
        
        [stories addObject:[item copy]];
        NSLog(@"adding story: %@", currentTitle);
    }
    }
    
}

- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string{
    if(choose == false)
    {
    NSLog(@"found characters: %@", string);
    // save the characters for the current item...
    if ([currentElement isEqualToString:@"title"]) {
        [currentTitle appendString:string];
    } else if ([currentElement isEqualToString:@"link"]) {
        [currentLink appendString:string];
    } else if ([currentElement isEqualToString:@"description"]) {
        [currentSummary appendString:string];
    } else if ([currentElement isEqualToString:@"pubDate"]) {
        [currentDate appendString:string];
    }
    }
    
}



Логику парсинга второго файла не представляю. Вытащить из второго файла требуется значения title, file и hash. Каким образом это сделать?
PM MAIL   Вверх
Maksys
Дата 1.7.2013, 03:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Future Splasher
***


Профиль
Группа: Завсегдатай
Сообщений: 1289
Регистрация: 15.6.2005
Где: Екатеринбург

Репутация: нет
Всего: 17



Первое правило программиста: "Не изобретать велосипед"
Используйте готовую библиотеку с блек джеком и шлюхами: MKFoundation
Или без шлюх: KISSXML


--------------------
 С уважением, BiMaWa™©.
user posted image
user posted image
PM MAIL ICQ Skype GTalk   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | iOS | Следующая тема »


 




[ Время генерации скрипта: 0.0954 ]   [ Использовано запросов: 20 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.