Форум программистов, компьютерный форум, киберфорум
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 18.07.2012
Сообщений: 8

Консолидация данных из новых файлов

20.07.2012, 12:36. Показов 1745. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите правильно создать bat-файл! В некой папке (назовем ее «Склад файлов») имеются XML файлы, из которых необходимо скопировать определенные строки, например 4-ую и 5-ую, в другой файл. Папка «Склад файлов» часто меняется, в нее периодически поступают новый файлы или удаляются старые, как это учесть при сохранении информации нужных строк, чтобы не потерять инфу о тех файлах, что уже удалены из папки, и не делать постоянную перезапись одинаковых документов.
Пример XML файла:
HTML5
1
2
3
4
5
6
7
8
9
<?xml version="1.0" encoding="windows-1251" ?>
<report code="22222222" form="042" year="2011" period="101">
<title>
<item name="okpo" value="11111"/>
<item name="name" value="Название предприятия"/>
<item name="leader_fio" value="Иванов Иван Иванович"/>
<item name="responsible_post" value="бухгалтер"/>
<item name="phone" value="(4922) 222222"/>
</title>
….Остальной текст XML файла
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
20.07.2012, 12:36
Ответы с готовыми решениями:

Копирование новых файлов каждые 30 минут
Знатоки, приветствую. Помогите пожалуйста реализовать задачу. Есть два каталога: &quot;Cat-1&quot; &quot;Cat-2&quot; В каталог...

Консолидация таблиц одинакового формата из разных файлов
Добрый день! Возникла задача разработать инструмент, объединяющий таблицы из разных файлов Excel. Таблицы имеют одинаковую шапку, но...

Консолидация данных
Помогите выполнить консолидацию данных с помощью трехмерных ссылок https://www.cyberforum.ru/attachments/486151d1423080101

9
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18033 / 7736 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
20.07.2012, 14:34
Bash
1
2
3
4
5
6
7
@echo off
setlocal enabledelayedexpansion
for /f "delims=" %%a in (d:\file.xml) do (
set /a n+=1
if !n!==4 echo %%a>d:\result.xml
if !n!==5 echo %%a>>d:\result.xml
)
Что-то через tokens не взлетел
1
887 / 189 / 16
Регистрация: 18.07.2011
Сообщений: 260
20.07.2012, 17:03
Цитата Сообщение от anna22.03 Посмотреть сообщение
поступают новый файлы или удаляются старые
А могут новые файлы иметь те имена, что имели старые?
1
0 / 0 / 0
Регистрация: 18.07.2012
Сообщений: 8
21.07.2012, 21:24  [ТС]
В некую папку поступает много XML файлов, у всех разные имена. При этом однозначно определить когда поступят новые или удалятся некоторые из файлов неизвестно

Добавлено через 3 минуты
В первом сообщении показан фрагмент одного из XML файлов, та часть которую необходимо сохранять. Значения ОКПО, имя и др. меняются, остаются неизменными лишь начало этих строк
0
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18033 / 7736 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
21.07.2012, 22:38
Давайте сформируем алгоритм: т.е. нужно сохранить информацию из 4-5 строк из каждого файла по мере их прихода. Информацию добавлять в 1 отдельній файл.

Можно с заданной периодичностью опрашивать содержимое папки по дате создания файлов. После очередного копирования инфы сохранять в отдельный TMP-файл метку о дате создания последнего файла и по ней проверять приход новых.
1
0 / 0 / 0
Регистрация: 18.07.2012
Сообщений: 8
22.07.2012, 19:11  [ТС]
Да именно это)
0
0 / 0 / 0
Регистрация: 18.07.2012
Сообщений: 8
23.07.2012, 16:03  [ТС]
Набрала код как показано во втором сообщении, но высветилось следующее сообщение, показанное в документе. Возможно, это связно с тем, что у меня на рабочем месте нет доступа к интернету, или нужно сделать какие то другие настройки
Вложения
Тип файла: doc oshibka.doc (100.0 Кб, 9 просмотров)
0
887 / 189 / 16
Регистрация: 18.07.2011
Сообщений: 260
23.07.2012, 16:21
Цитата Сообщение от anna22.03 Посмотреть сообщение
Набрала код как показано во втором сообщении, но высветилось следующее сообщение, показанное в документе. Возможно, это связно с тем, что у меня на рабочем месте нет доступа к интернету, или нужно сделать какие то другие настройки
Это правильная ошибка, т.к. строки собранные вместе из разных XML не становятся XML.
Если хотите, чтобы результат можно можно было посмотреть, то исправьте result.xml на result.txt в 5-ой и 6-ой строках.
1
0 / 0 / 0
Регистрация: 18.07.2012
Сообщений: 8
24.07.2012, 10:58  [ТС]
Спасибо, сейчас попробую, правдо когда я проводила тестирование кода я брала только один XML файл

Добавлено через 1 час 35 минут
Получилось сделать с одним файлом, у которого я знаю название, однако это только пробный вариант, поскольку точно знать какие придут XML файлы знать нельзя, они имеют примерно следующие названия 0601013_1_4_93556380_2012_2_52-2_e24dbd2ab037401e804d071b7305d77eю.xml

Добавлено через 1 минуту
и что сделать что бы bat реагировал лишь на новых файлы не стирая информацию об уже записанных?
0
0 / 0 / 0
Регистрация: 18.07.2012
Сообщений: 8
25.09.2012, 16:46  [ТС]
В первом сообщении лишь примерное содержание xml файла,та часть которую необходимо сохранить в другой файл. Отчеты будут удаляться из папки когда человек будет загружать их в программу. Сохранение строк происходит, но как добиться того чтобы сохранение было лишь вновь поступивших файлов? может делать кукую нибудь проверку чтобы при совпадении нескольких строк из xml файлов не производилась повторная запись этого документа
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.09.2012, 16:46
Помогаю со студенческими работами здесь

Консолидация разнородных данных
Доброго времени суток! Возникла небольшая проблема - не могу придумать как сделать нормальную консолидацию таблиц в одну, подозреваю...

Oracle консолидация данных
Доброго времени суток. в 4 утра решил сдаться по поиску информации, утром продолжу, но, возможно, кто-то подскажет как мне разобраться с...

Консолидация данных из разных книг макрос
Уважаемые, Форумчане!доброго времени суток! очень нужна Ваша помощь (с VBA даже не на Вы). Есть несколько абсолютно однотипных книг...

Консолидация данных, сумма чётных/нечётных чисел, фильтры
Помогите плз ответить на 6 вопросов по Excel из прикреплённого документа или поделитесь ссылками на материал по данным темам (мне именно с...

Копирование новых файлов
Добрый день, есть задача копировать все файлы из папки &quot;А&quot; в папку &quot;Б&quot; несколько раз в день через планировщик, соответственно старые файлы...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru