Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Операционные системы > Операционные системы общие вопросы
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.09.2012, 10:51   #271
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Анна, а зачем такие задачи решать с помощью BAT файлов? Любая программка на любом языке ВУ будет в 100 раз надёжнее и удобнее (и проще, строго говоря!)
Serge_Bliznykov вне форума Ответить с цитированием
Старый 25.09.2012, 11:12   #272
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,544
По умолчанию

Цитата:
Сообщение от anna22.03 Посмотреть сообщение
Помогите правильно составить bat файл!
Надо использовать вложенный цикл, перебираем все файлы в папке, для каждого файла просматриваем строки. Примерно так:
Код:
@ echo off
setlocal enabledelayedexpansion

for /f "delims=" %%f in ('dir *.xml /b') do (
  set n=0
  for /f "delims=" %%a in ('type "%%f"') do (
    set /a n+=1
    ...
  )
)

pause
Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
Анна, а зачем такие задачи решать с помощью BAT файлов? Любая программка на любом языке ВУ будет в 100 раз надёжнее и удобнее (и проще, строго говоря!)
Не всегда допустимо использовать программы на рабочем месте. К примеру, я когда работал в банке, то там категорически было запрещено использовать какие-либо сторонние программы, в том числе и самописные. А решать задачи средствами ОС никто не запрещал. Потому приходилось писать весьма громоздкие бат-файлы.
Arigato вне форума Ответить с цитированием
Старый 25.09.2012, 11:48   #273
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от Arigato
Не всегда допустимо использовать программы на рабочем месте.
К примеру, я когда работал в банке, то там категорически было запрещено использовать какие-либо сторонние программы, в том числе и самописные.
ага. сочувствую!

но, во-первых, весьма спорно, что BAT - это не "самописная стороннаяя программа", в BAT/CMD можно много чего наворотить! Во-вторых, можно легко скрипт на том же C# набросать (а если на компьютере установлен Framework - то и запустить). Или VBS/VBA - тоже фактически встроены в систему/офис, их можно использовать? В третьих, знаю, действительно бывают такие ситуации, вот я и хотел у TC уточнить, тот ли это случай. (кстати, не исключаю, что это может быть и учебное задание)
ну и в-четвёртых, строго говоря, Вы же задачу не полностью решили:
а) нужно выполнять этот батник по мере поступления новых XML файлов
b) те файлы, которые уже были обработаны ранее - не должны повторно попадать в результирующий файл...
Serge_Bliznykov вне форума Ответить с цитированием
Старый 25.09.2012, 12:09   #274
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,544
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
весьма спорно, что BAT - это не "самописная стороннаяя программа", в BAT/CMD можно много чего наворотить!
Это рассматривалось, как решение задачи средствами ОС, без сторонних приблуд.

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
Или VBS/VBA - тоже фактически встроены в систему/офис, их можно использовать?
Я в VBA не силен, но некоторые делали весьма серьезные приложения в Excel, что тоже не запрещалось.

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
ну и в-четвёртых, строго говоря, Вы же задачу не полностью решили
Я лишь намекнул, как перебирать все файлы в каталоге, собственно, таков и был вопрос. Ну а как определять новизну, то тут можно разные решения придумать: удалять уже обработанные (если это допустимо), вести список обработанных, смотреть по дате и т.п.
Arigato вне форума Ответить с цитированием
Старый 25.09.2012, 14:13   #275
DiemonStar
Старожил
 
Регистрация: 08.02.2012
Сообщений: 2,173
По умолчанию

Цитата:
но некоторые делали весьма серьезные приложения в Excel, что тоже не запрещалось.
хмм... с учётом поддержки ActiveX и WinAPI не вижу разницы между Excel и самописной программой...
Правильно поставленная задача - три четверти решения.
DiemonStar вне форума Ответить с цитированием
Старый 25.09.2012, 14:36   #276
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,544
По умолчанию

Разница в том, что нет отдельного ехе-файла, работа происходит в пределах среды Excel. Там была типа БД для производственного отдела. Все это формальности, которые требуются при проверках. Одно дело непонятный левый ехе-файл, и совсем другое, когда просто открывается таблица в Excel.
Arigato вне форума Ответить с цитированием
Старый 25.09.2012, 16:13   #277
anna22.03
 
Регистрация: 19.07.2010
Сообщений: 8
По умолчанию

Ну во-первых это задание не по учебе, а по работе, но программированием я особо не занималась никогда, поэтому поставленная задача для меня стала изучением нового языка. Во-вторых почему написать нужно с помощью батника, просто сказали что с его помощью можно выполнить данную задачу, а так предпочтений где можно было бы написать программу нет. В-третьих xml файлы из папки переодически удаляются, но могут и вновь попасть туда, если не получиться правильно их загрузить. В-четвертых уже сделано что этот батник запускался автоматически через определенные промежутки времени, нужно только проверить не будет ли его запуск мешать работе остальных программ на компьюторе.
anna22.03 вне форума Ответить с цитированием
Старый 25.09.2012, 16:19   #278
anna22.03
 
Регистрация: 19.07.2010
Сообщений: 8
По умолчанию

Сейчас посмотрю получиться ли с помощью цикла просматривать все xml файлы, позднее отпишусь,а вот с дозаписью новых и не повтором старых записей будет сложнее
anna22.03 вне форума Ответить с цитированием
Старый 25.09.2012, 18:04   #279
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,544
По умолчанию

Можно все обработанные файлы копировать в другую папку, а в батнике перед обработкой очередного файла делать проверку if not exist "papka\%%f" ...
Arigato вне форума Ответить с цитированием
Старый 26.09.2012, 09:03   #280
anna22.03
 
Регистрация: 19.07.2010
Сообщений: 8
По умолчанию

ты имеешь в виду обработанные это те которые уже загруженные? они по автомату пропадут из той панки про которую я говорила в начале,так устроена другая программа,да и все файлы что находятся в этой папке как копии,полученные изначально. так что впринципе копировать не нужно
anna22.03 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Макрос для сохранения листов в отдельных файлах Neo007 Microsoft Office Excel 2 22.10.2008 18:16
Русская раскладка в bat-файлах snake-as Microsoft Office Excel 3 16.10.2008 17:59
Сортировка в файлах и записях. Паскаль Elizabeth Black Помощь студентам 2 27.05.2008 21:51
Помогите с вопросами о файлах Дима82 Помощь студентам 5 26.05.2008 19:49
Помогите, пожалуйста, решить задачу по файлах sheva_ser Паскаль, Turbo Pascal, PascalABC.NET 1 27.03.2008 19:36