Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
NuRiKGiF
35 / 37 / 0
Регистрация: 11.06.2013
Сообщений: 163
1

Нужно вывести данные в таблицу из xml файла

30.07.2013, 06:06. Просмотров 1036. Ответов 4
Метки нет (Все метки)

Есть такой файлик с расширением .xml (из программы spy_orb) в нем много строк, но нам нужно вытащить только суммы и запихнуть в таблицу, ниже привел пример кода (в нем есть вначале и другие данные, но под данным примером я написал что нужно вытащить из файла)
HTML5
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
<СВЕДЕНИЯ_О_СУММЕ_ВЫПЛАТ_О_СТРАХОВЫХ_ВЗНОСАХ_И_СТРАХОВОМ_СТА ЖЕ_ЗЛ>
<НомерВпачке>117</НомерВпачке>
<ТипСведений>ИСХОДНАЯ</ТипСведений>
<РегистрационныйНомер>***-8**-02****</РегистрационныйНомер>
<НаименованиеКраткое>ООО РЕМЖИЛСТРОЙ</НаименованиеКраткое>
<НалоговыйНомер>
<ИНН>00********</ИНН>
<КПП>02********</КПП>
</НалоговыйНомер>
<КодКатегории>НР</КодКатегории>
<ОтчетныйПериод>
<Квартал>2</Квартал>
<Год>2013</Год>
</ОтчетныйПериод>
<СтраховойНомер>0**-9**-**8 **</СтраховойНомер>
<ФИО>
<Фамилия>ИВАНОВ</Фамилия>
<Имя>ИВАН</Имя>
<Отчество>ИВАНОВИЧ</Отчество>
</ФИО>
<ТипДоговора>ТРУДОВОЙ</ТипДоговора>
<СуммаВыплатИвознагражденийВпользуЗЛ>
<ТипСтроки>МЕСЦ</ТипСтроки>
<Месяц>4</Месяц>
<СуммаВыплатВсего>20930.00</СуммаВыплатВсего>
<СуммаВыплатНачисленыСтраховыеВзносыНеПревышающие>20930.00 </СуммаВыплатНачисленыСтраховыеВзносыНеПревышающие>
<СуммаВыплатНачисленыСтраховыеВзносыПревышающие>0.00</СуммаВыплатНачисленыСтраховыеВзносыПревышающие>
</СуммаВыплатИвознагражденийВпользуЗЛ>
<СуммаВыплатИвознагражденийВпользуЗЛ>
<ТипСтроки>МЕСЦ</ТипСтроки>
<Месяц>5</Месяц>
<СуммаВыплатВсего>10961.54</СуммаВыплатВсего>
<СуммаВыплатНачисленыСтраховыеВзносыНеПревышающие>10961.54 </СуммаВыплатНачисленыСтраховыеВзносыНеПревышающие>
<СуммаВыплатНачисленыСтраховыеВзносыПревышающие>0.00</СуммаВыплатНачисленыСтраховыеВзносыПревышающие>
</СуммаВыплатИвознагражденийВпользуЗЛ>
<СуммаВыплатИвознагражденийВпользуЗЛ>
<ТипСтроки>МЕСЦ</ТипСтроки>
<Месяц>6</Месяц>
<СуммаВыплатВсего>20930.00</СуммаВыплатВсего>
<СуммаВыплатНачисленыСтраховыеВзносыНеПревышающие>20930.00 </СуммаВыплатНачисленыСтраховыеВзносыНеПревышающие>
<СуммаВыплатНачисленыСтраховыеВзносыПревышающие>0.00</СуммаВыплатНачисленыСтраховыеВзносыПревышающие>
</СуммаВыплатИвознагражденийВпользуЗЛ>
<СуммаВыплатИвознагражденийВпользуЗЛ>
<ТипСтроки>ИТОГ</ТипСтроки>
<СуммаВыплатВсего>52821.54</СуммаВыплатВсего>
<СуммаВыплатНачисленыСтраховыеВзносыНеПревышающие>52821.54 </СуммаВыплатНачисленыСтраховыеВзносыНеПревышающие>
<СуммаВыплатНачисленыСтраховыеВзносыПревышающие>0.00</СуммаВыплатНачисленыСтраховыеВзносыПревышающие>
</СуммаВыплатИвознагражденийВпользуЗЛ>
<СуммаВзносовНаСтраховую>
<Начислено>11620.74</Начислено>
<Уплачено>11620.74</Уплачено>
</СуммаВзносовНаСтраховую>
<СуммаВзносовНаНакопительную>
<Начислено>0.00</Начислено>
<Уплачено>0.00</Уплачено>
</СуммаВзносовНаНакопительную>
<СтажевыйПериод>
<НомерСтроки>1</НомерСтроки>
<ДатаНачалаПериода>01.04.2013</ДатаНачалаПериода>
<ДатаКонцаПериода>30.06.2013</ДатаКонцаПериода>
</СтажевыйПериод>
<ДатаЗаполнения>26.07.2013</ДатаЗаполнения>
</СВЕДЕНИЯ_О_СУММЕ_ВЫПЛАТ_О_СТРАХОВЫХ_ВЗНОСАХ_И_СТРАХОВОМ_СТАЖ Е_ЗЛ>
Здесь получается у нас вот это <СВЕДЕНИЯ_О_СУММЕ_ВЫПЛАТ_О_СТРАХОВЫХ_ВЗНОСАХ_И_СТРАХОВОМ_С ТА ЖЕ_ЗЛ> и вот это </СВЕДЕНИЯ_О_СУММЕ_ВЫПЛАТ_О_СТРАХОВЫХ_ВЗНОСАХ_И_СТРАХОВОМ_СТАЖ Е_ЗЛ> являются разделителями между людьми, то есть каждый новый человек начинается и заканчивается этими параметрами

Далее из этого "тела" нам нужно вытащить в таблицу ФИО, НАЧИСЛЕНО, СТРАХОВУЮ, НАКОПИТЕЛЬНУЮ, НАЛОГООБЛАГАЕМУЮ, а КВАРТАЛ и ГОД вывести в заголовок таблицы как то так: "Реестр лицевых по ПФР за <Квартал> кв. <Год> г. " Как бы то что в знаках <> он должен взять данные из файла в нашем случае год = 2013 а квартал = 2

Далее уже составляем почеловечную таблицу берем <ФИО> и ставим в первый столбец
Берем <СуммаВыплатВсего>52821.54</СуммаВыплатВсего> и ставим во второй столбец "НАЧИСЛЕНО"
Берем <СуммаВыплатНачисленыСтраховыеВзносыНеПревышающие>52821.54 </СуммаВыплатНачисленыСтраховыеВзносыНеПревышающие> и ставим в третий столбец "НАЛОГООБЛАГАЕМАЯ"
Берем <СуммаВзносовНаСтраховую> <Начислено>11620.74</Начислено> </СуммаВзносовНаСтраховую> и ставим в четвертый столбец "СТРАХОВАЯ"
Берем <СуммаВзносовНаНакопительную><Начислено>0.00</Начислено></СуммаВзносовНаНакопительную> и ставим в пятый столбец "НАКОПИТЕЛЬНАЯ"

И внизу итоги по столбцам. Повторюсь, в файле много раз открывается и закрывается так называемое "тело" просчета по человеку такими параметрами <СВЕДЕНИЯ_О_СУММЕ_ВЫПЛАТ_О_СТРАХОВЫХ_ВЗНОСАХ_И_СТРАХОВОМ_С ТА ЖЕ_ЗЛ> и вот это </СВЕДЕНИЯ_О_СУММЕ_ВЫПЛАТ_О_СТРАХОВЫХ_ВЗНОСАХ_И_СТРАХОВОМ_СТАЖ Е_ЗЛ> нужно то что под ними, если имеются параметры, которые я описал что нужно вывести в таблицу то их вывести. И вывести так чтоб можно было мышью выделить и скопировать чтоб можно было вставить в ЭКСЕЛЬ к примеру, еще можно было бы на печать отправить кнопку сделать.
Как задача? Я обработку файлов построково не умею да и все прочее ((( Кто нибудь может написать такую вещь? По сути вроде алгоритм не сложный от сих до сих выбирай то и выводи сюда (в таблицу) таблицу я тоже выводить не умею (((
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.07.2013, 06:06
Ответы с готовыми решениями:

Прочитать данные из файла XML
Суть такова что нужно взять цифру с файла XML и записать в переменную. Цифра...

Нужно переделать, чтобы программа могла считывать данные с файла и записывать в него результат.
Вот программа, созданная мною в C++ Builder. Она в не квадратной матрице...

Нужно вывести текст из файла в Socket->address=?
Реябт, тут такая трабла. У меня в одной форме вводяться данные в текстовый...

[XML] Как отсортировать данные в XML?
Друзья привет. В ранее созданой теме приводил пример .xml файла. Подскажите...

Вывести из файла данные про товары, срок годности которых истекает в текущем году
Создать текстовый файл с произвольной информацией. Организовать просмотр...

4
ForEveR
В астрале
Эксперт С++
7997 / 4755 / 652
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
30.07.2013, 11:15 2
NuRiKGiF, Берем любой xml парсер и вперед. Руками-то зачем парсить xml?
Ну и естественно такую вещь никто писать не будет (кому оно надо-то? скучно ведь да и раздел форума не тот). Так что - выбираете xml парсер, выбираете формат вывода - парсите, выводите.
1
fanatdebian
Z3JheSBoYXQ=
339 / 234 / 83
Регистрация: 08.07.2012
Сообщений: 577
31.07.2013, 03:40 3
Для решения подобного рода задач я бы выбрал питон в качестве инструмента, там есть соответствующий инструментарий в виде, ВНЕЗАПНО, реализованных модулей с методами парсинга тегов.

1
Wolkodav
610 / 463 / 58
Регистрация: 18.09.2012
Сообщений: 1,688
01.08.2013, 23:41 4
Можно еще в сторону C#( если уж совсем С-подобный) посмотреть. Когда-то писал свой парсер на нём для XML, простенький правда.
1
Avazart
Эксперт С++
7738 / 5648 / 550
Регистрация: 10.12.2010
Сообщений: 25,501
Записей в блоге: 17
03.08.2013, 23:45 5
Библиотеки libxml2, tinyxml идр.

В С++Builder и Qt есть свои инструменты работы с XML.

( http://www.cyberforum.ru/blogs/131347/blog538.html )
1
03.08.2013, 23:45
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.08.2013, 23:45

Занести данные из файла в таблицу ( List Control )
Собственно надо извлечь данные из файла и перенести их в таблицу. В файл данные...

Создать таблицу, которая выводила бы данные из текстового файла
Работаю в среде Visual studio 2012 professional. Перерыл все, что мог, но все...

Вывести данные из файла в таблицу
Работаю в среде Visual studio 2012 professional. Перерыл все, что мог, но все...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru