Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 01.07.2013
Сообщений: 10
1

Libxml2 - программа завершается при выполнении функции xmlReadFile()

20.04.2014, 20:38. Показов 1229. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Привет. Делаю xml-parser, использую библиотеку libxml2. Почему-то программа завершается при выполнении функции xmlReadFile(). Не могу понять в чем дело Подскажите, пожалуйста, в чем проблема может быть?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.04.2014, 20:38
Ответы с готовыми решениями:

Программа завершается аварийно при вызове функции
Делаю консольное приложение на шестом Билдере. Не могу найти ошибку.Убил день. Прога компилиться...

При вызове функции из OpenSSL программа завершается с кодом 0х1
int main(int argc, char* argv) { RSA *keypair = RSA_generate_key(RSA_KEY_LENGTH, PUB_EXP, NULL,...

Найти значение функции. Программа завершается некорректно
Помогите пожалуйста, ошибок компилятор не выдаёт, но винда аварийно завершает работу...

Программа завершается при проверке условий
при выполнении условий if (m<2) or (m>5) or (f<2) or (f>5) выкидывает из программы, исправьте...

9
6287 / 3570 / 900
Регистрация: 28.10.2010
Сообщений: 5,937
20.04.2014, 20:40 2
Стоило выложить свой XML файл и свой код, которым вы открываете этот файл.
0
0 / 0 / 0
Регистрация: 01.07.2013
Сообщений: 10
20.04.2014, 21:18  [ТС] 3
XML
1
2
3
4
5
6
7
8
9
<?xml version="1.0" encoding="UTF-8"?>
<stationery>
<s1>
  <title>pen</title>
  <Characteristic amount="50" unit="руб">Цена</Characteristic>
  <Characteristic amount="red">цвет</Characteristic>
  <Characteristic amount="0.5" unit="мм">толщина</Characteristic>
</s1>
</stationery>
а открываю я этот xml-файл так:
C
1
doc = xmlReadFile("test.xml", NULL, 0);
Добавлено через 30 минут
Если xml файл пустой, то программа не завершается, а сообщает, что файл пуст, как и должно быть, собственно. Значит все дело в структуре моего xml файла? Хотя я его проверил и, вроде, он без ошибок...
0
6287 / 3570 / 900
Регистрация: 28.10.2010
Сообщений: 5,937
20.04.2014, 21:31 4
Документ верный. У меня работает.
0
0 / 0 / 0
Регистрация: 01.07.2013
Сообщений: 10
20.04.2014, 22:09  [ТС] 5
Петррр, тогда в чем может быть проблема?

Вот часть кода главной функции:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
int main(int argc, char **argv)
{
   // здесь прога выполняется
   xmlDocPtr doc = xmlReadFile("test.xml", NULL, 0);
   // а до этого места уже не доходит...
   if(doc == NULL)
   {
      printf("Error parsing file %s\n", argv[1]);
      exit(1);
   }
   // здесь еще разные функции
   xmlFreeDoc(doc);
   return 0;
}
0
6287 / 3570 / 900
Регистрация: 28.10.2010
Сообщений: 5,937
20.04.2014, 22:12 6
Некит_94, я особо не шарю в этом деле. Какая операционная система? Попробуйте скомпилировать и запустить из командной строки.
0
0 / 0 / 0
Регистрация: 01.07.2013
Сообщений: 10
20.04.2014, 22:13  [ТС] 7
Петррр, ОС Windows...собственно, из командой компилирую и запускаю, компилятор MinGW. Компиляция прошла хорошо, без предупреждений всяких...
0
6287 / 3570 / 900
Регистрация: 28.10.2010
Сообщений: 5,937
20.04.2014, 22:33 8
Некит_94, а запуск то что выдает? Какие-то ошибки в консоль должны выдаваться.
0
0 / 0 / 0
Регистрация: 01.07.2013
Сообщений: 10
20.04.2014, 22:36  [ТС] 9
В том то и дело, что ничего не выходить. Появляется окно завершения программы и все, без сообщения об ошибке
0
0 / 0 / 0
Регистрация: 01.07.2013
Сообщений: 10
23.04.2014, 05:07  [ТС] 10
Все, проблема решена Проблема в кодировке XML файла была. Это я понял, когда в другом IDE прогу скомпилировал и запустил, там все ошибки показал мне, которые парсер выдал.
Проблему решил так: создал пустой файл, скопировал туда текст из старого XML файла и сохранил в кодировке utf-8 (до этого тоже вроде utf-8 была, но не знаю почему парсер ошибку выдавал).
0
23.04.2014, 05:07
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.04.2014, 05:07
Помогаю со студенческими работами здесь

Программа завершается при любых действиях пользователя
Программа заканчивается, даже если пользователь выбрал продолжить программу. В чём проблема? Код...

Программа аварийно завершается при прохождении цикла
QVector&lt;int&gt; Set; QPair &lt;int,int&gt; Map; int c=0,Num,; srand(time(NULL)); ...

Программа завершается крахом при чтении из сокета
Есть структура balance, ее тип ProtocolStruct::RespEnvirState. Есть переменная int nBalance,...

При открытия файла аварийно завершается программа
Пишу меди плеер , при открытия файла программа завершаться аварийно, вот код программы using...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru