![]() |
|
Модераторы: diadiavova |
![]()
|
|
| happyfu |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 21.6.2008 Репутация: нет Всего: нет |
Помогите с программой.
Нужно считать числовые данные(цена, частота мин, частота макс) из XML-документа в двухмерный массив и записать этот массив в текстовый файл. Вот XML <?xml version="1.0" encoding="UTF-8"?> <headphones> <unit1 > <title>Technics</title> <Characteristic amount="24" unit="доллар">Цена</Characteristic> <Characteristic amount="20" unit="герц">Частота мин</Characteristic> <Characteristic amount="27" unit="кгерц">Частота макс</Characteristic> </unit1> <unit2 > <title>Sennheiser</title> <Characteristic amount="29" unit="доллар">Цена</Characteristic> <Characteristic amount="20" unit="герц">Частота мин</Characteristic> <Characteristic amount="20" unit="кгерц">Частота макс</Characteristic> </unit2> <unit3 > <title>AKG</title> <Characteristic amount="95" unit="доллар">Цена</Characteristic> <Characteristic amount="15" unit="герц">Частота мин</Characteristic> <Characteristic amount="22" unit="кгерц">Частота макс</Characteristic> </unit3> </headphones> Это сообщение отредактировал(а) happyfu - 21.6.2008, 17:57 |
|||
|
||||
| Rififi |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1254 Регистрация: 9.3.2008 Репутация: нет Всего: 36 |
и как этот массив должен выглядеть?
|
|||
|
||||
| happyfu |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 21.6.2008 Репутация: нет Всего: нет |
Лучше просто вывести эти данные в файл текстовый. Например
24 20 27 29 20 20 95 15 22 |
|||
|
||||
| bronislav |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 334 Регистрация: 29.1.2008 Где: Украина::Донецк Репутация: нет Всего: 3 |
Используй готовые библиотеки для парсинга xml. Например tinyxml, expat, libxml
-------------------- ![]() иногда проще и быстрей обойти лужу, даже если кажется что она мелкая и путь напрямик короче - ведь она может скрывать открытый люк (с) mes |
|||
|
||||
| jonie |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: нет Всего: 118 |
если задача не академическая, то лично ябы предпочел xslt преобразование (т.е. вообще без С++).
-------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
| SABROG |
|
|||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: нет Всего: 91 |
В принципе да, можно качнуть прогу xsltproc, что идет в пакете libxml2 и создать .xsl файлик. По сути файл - алгоритм парсинга xml'я. Ну или если совсем не хочется ничего качать и xml не большой, то можно создать xsl файлик, добавить заголовок в xml и открыть его через firefox/ie, а результат скопировать и сохранить в текстовый файл. |
|||
|
||||
| Rififi |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1254 Регистрация: 9.3.2008 Репутация: нет Всего: 36 |
happyfu,
пропускаешь xml через такой XPath столько раз, сколько у тебя новов unit*: //unit1//@amount вместо unit1 подставлешь имена других нодов |
|||
|
||||
| Andrey44 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1501 Регистрация: 4.12.2006 Где: На работе Репутация: нет Всего: 26 |
Можно и разобраться с IXMLDOMDocument и остальными IXML......... Если есть желание
-------------------- ????? ??, ??????? ?????. |
|||
|
||||
| Goodilla |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 49 Регистрация: 10.10.2007 Репутация: нет Всего: 1 |
||||
|
||||
| happyfu |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 21.6.2008 Репутация: нет Всего: нет |
Подскажите как привести const xmlChar * к const char *?
|
|||
|
||||
![]()
|
| Правила форума "XML/XSLT" | |
|
|
Прежде чем опубликовать вопрос, попробуйте воспользоваться поиском - возможно тема уже поднималась. Также рекомендуем Вам зайти в раздел FAQ ,раздел дополняется и, возможно, там вы увидите готовое решение. Для ответов на часто задаваемые вопросы существует FAQ раздела. Новости можно публиковать в разделе новостей. Для статей так же есть специальный раздел Желаем удачи в Вашем деле! Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, diadiavova. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | XML, XSL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |