Форум программистов, компьютерный форум CyberForum.ru

Анализ данных XML-документа - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Функция wait http://www.cyberforum.ru/cpp/thread9194.html
Доброго времени суток. Передо мной встал вопрос на который я не могу дать ответ, может ктонибудь знает. Вопрос: определить, что должно происходить, если вызов wait функции возвращает -1.
C++ Отслеживание действий мыши Всем привет, хотелось бы сделать хук на мышь, не подскажете литературу или методы существующие Спасибо http://www.cyberforum.ru/cpp/thread9193.html
Графическая библиотека GD C++
Кто-нибудь работал с сабжем? У меня проблема. Глюки с ф-ей gdImageGetPixel() - каждый раз при перезапуске программы она возвращает разные значения одних и тех же пикселов. Не могу понять, в чём дело... Добавлено через 21 час 6 минут Неужели никто не работал с этой либой?
C++ Записать в новый файл наибольшее каждых пяти компонентов исходного файла
Дан файл F(создать его), компоненты которого-целые числа. Число их кратно 5. Записать в новый файл G наибольшее из 1-ых 5-ти компонентов файла F, затем из 5-ти следующих компонентов и т.д. Помогите пожалуйста, очень надо.
C++ Как проверить наличие антивируса? http://www.cyberforum.ru/cpp/thread8870.html
Каким образом можно запретить любой доступ к флешке всем прогам, кроме моей? Как проверить наличие антивируса? заранее благодарен.
C++ Системный вызов sendfile() Народ помогите почему может не работать sendfile() ???? #include <unistd.h> #include <stdio.h> #include <string.h> #include <errno.h> #include <fcntl.h> #include <stdlib.h> #include <sys/sendfile.h> #include <sys/stat.h> подробнее

Показать сообщение отдельно
Vourhey
Почетный модератор
6478 / 2253 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
21.06.2008, 20:20
Накатал примерчик:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#include<stdio.h>
#include<string.h>
#include<libxml/parser.h>
#include<libxml/tree.h>
 
xmlDocPtr doc = NULL;//указатель на документ
FILE *f;
 
void rec(xmlNodePtr node)
{
   xmlNodePtr cur_node = node;
   while (cur_node)
   {
//в этом цикле проверяется соотвествие тому, что мы на узел попали
//затем что это узел "Characteristic"
      if ((cur_node->type == XML_ELEMENT_NODE) &&
         (strcmp(cur_node->name, "Characteristic") == 0))
      {
         xmlAttrPtr attr = cur_node->properties;//берем атрибут...
         fprintf(f, "\n\nCharacteristics of %s %s ", cur_node->parent->name, xmlNodeGetContent(cur_node));
         while(attr)
         {
            fprintf(f," %s", attr->children->content);
            attr = attr->next;//наследующий атрибут
         }
      }
      rec(cur_node->children);
      cur_node = cur_node->next;
   }
}
 
int main(int argc, char **argv)
{
   LIBXML_TEST_VERSION;//это для компилера...
   doc = xmlReadFile(argv[1], NULL, 0);//парсим наш файл
   if(doc == NULL)
   {
      printf("Error parsing file %s\n", argv[1]);
      exit(1);
   }
   xmlNodePtr root = xmlDocGetRootElement(doc);//берем корневой элемент
   f = fopen("onefile","w");
   rec(root);
   fclose(f);
   xmlFreeDoc(doc);
   return 0;
}
В файле получаем:
Код
Characteristics of unit1 Цена  24 доллар

Characteristics of unit1 Частота мин  20 герц

Characteristics of unit1 Частота макс  27 кгерц

Characteristics of unit2 Цена  29 доллар

Characteristics of unit2 Частота мин  20 герц

Characteristics of unit2 Частота макс  20 кгерц

Characteristics of unit3 Цена  95 доллар

Characteristics of unit3 Частота мин  15 герц

Characteristics of unit3 Частота макс  22 кгерц
Изменить формат вывода - пять минут.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru