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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C (СИ) Модифицировать код так, чтобы новые цифры добавлялись не в начале а в конце http://www.cyberforum.ru/cpp/thread9215.html
Привет всем, я новенький на форуме и в освоении "С". У меня следующая проблема: #include <stdio.h> #include <stdlib.h> struct Knoten { int Inhalt; struct Knoten *next; };
C++ Функция wait Доброго времени суток. Передо мной встал вопрос на который я не могу дать ответ, может ктонибудь знает. Вопрос: определить, что должно происходить, если вызов wait функции возвращает -1. http://www.cyberforum.ru/cpp/thread9194.html
Отслеживание действий мыши C++
Всем привет, хотелось бы сделать хук на мышь, не подскажете литературу или методы существующие Спасибо
C++ Как применить динамическую память?
Помогите пожайлуста!!!!! Как в слейдущей программе применить динамическую память????? #include <stdio.h> #include<conio.h> #define N 3 void printMatr(int m) { int i,j; for(i=0; i<N; ++i) { for(j=0; j<N; ++j)
C++ Написать стек на основе одномерного массива http://www.cyberforum.ru/cpp/thread9126.html
Пробую написать стек на основе одномерного массива. Скажите что не так делаю. #include <iostream.h> #include <conio.h> #include <stdlib.h> #include <dos.h> #include <stdio.h> int sp=0, n; //размер стека. индекс элемента на вершине стека int *stac=(int*)malloc(n*sizeof(int)); int size() {
C++ Алгоритм к классу DateTime Привет, срочно нужно алгоритм к класу DateTime.:help: Добавлено через 21 минуту Вот что мне надо реализовать: DaysInMonth - Позволяет определить количество дней в месяце IsLeapYear - Определяет высокосный год Now - Возвращает текущее время подробнее

Показать сообщение отдельно
Vourhey
Почетный модератор
6471 / 2246 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
21.06.2008, 20:20     Анализ данных XML-документа
Накатал примерчик:
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 кгерц
Изменить формат вывода - пять минут.
 
Текущее время: 01:36. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru