|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] замена значения в xml-файле |
|
CMD/BAT - [решено] замена значения в xml-файле
|
Пользователь Сообщения: 102 |
Профиль | Отправить PM | Цитировать имеется файл xml следующего содержания:
<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet type="text/xsl" href="https://portal.rosreestr.ru/xsl/GKN/Vidimus/04/common.xsl"?><Region_Cadastr_Vidimus_KV><eDocument CodeType="114" Version="04"> необходим bat файл который будет заменять текст помеченный голубым на: \\serv\папки\xml\common.xsl вторая задача: запустить IE в автономном режиме на просмотр этого файла пока bat умеет лишь брать имя xml который лежит в той же папке в переменную: в результате должен получится файл %FILEname%_local.xml и открыться в IE |
|
Отправлено: 13:29, 17-09-2012 |
Новый участник Сообщения: 6
|
Профиль | Отправить PM | Цитировать Товарищи, добрый день. Помоги пожалуйста написать батник. Имеется xml файл следующего содержания:
<?xml version="1.0" encoding="UTF-8"?> <PacketEPD xmlns="urn:cbr-ru:ed:v2.0" EDQuantity="1" Sum="175000" SystemCode="01" EDNo="1" EDDate="2017-11-03" EDAuthor="9999999999"> <ED101 TransKind="01" Priority="5" SystemCode="01" EDReceiver="0000000000" Sum="175000" EDNo="000000000" EDDate="2017-11-02" EDAuthor="0702615000"> <AccDoc AccDocNo="000000" AccDocDate="2017-11-02"></AccDoc> <Payer PersonalAcc="00000000000000000000" INN="0000000000" KPP="000000000"> <Name>тест</Name> <Bank BIC="000000000" CorrespAcc="00000000000000000000"></Bank> </Payer> <Payee PersonalAcc="00000000000000000000" INN="000000000" KPP="000000000"> <Name>тест "тест"</Name> <Bank BIC="000000000" CorrespAcc="00000000000000000000"></Bank> </Payee> <Purpose>тест</Purpose> </ED101> </PacketEPD> В нем батником нужно значение CorrespAcc= заменить на другой счет и дата в поле EDDate должно равняться дате в поле AccDocDate. |
Отправлено: 11:35, 10-11-2017 | #11 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата Kadoh:
|
|
Отправлено: 12:25, 10-11-2017 | #12 |
Новый участник Сообщения: 6
|
Профиль | Отправить PM | Цитировать Не большое уточнение в xml файле значение CorrespAcc="30101810600000000758" мне нужно заменить этот счет на 30109810060340000009. Мне кажется это значение нужно прописать в батнике.
|
Отправлено: 12:35, 10-11-2017 | #13 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата Kadoh:
|
|
Отправлено: 13:54, 10-11-2017 | #14 |
Новый участник Сообщения: 6
|
Профиль | Отправить PM | Цитировать только если равен
|
Отправлено: 13:55, 10-11-2017 | #15 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Kadoh, а в каких разделах менять — в «Payer», в «Payee» или в любом/обоих?
|
Отправлено: 17:35, 10-11-2017 | #16 |
Новый участник Сообщения: 6
|
Профиль | Отправить PM | Цитировать Payee
|
Отправлено: 17:58, 10-11-2017 | #17 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Kadoh, на WSH:
Скрытый текст
Option Explicit Dim strFile Dim strCurrCorrespAccValue Dim strNewCorrespAccValue Dim objXMLDOMElement strCurrCorrespAccValue = "30101810600000000758" strNewCorrespAccValue = "30109810060340000009" If WScript.Arguments.Count = 1 Then strFile = WScript.Arguments.Item(0) If WScript.CreateObject("Scripting.FileSystemObject").FileExists(strFile) Then With WScript.CreateObject("MSXML2.DOMDocument") .async = False If .load(strFile) Then For Each objXMLDOMElement In .selectNodes("/PacketEPD/ED101/Payee/Bank[@CorrespAcc=""" & strCurrCorrespAccValue & """]") objXMLDOMElement.setAttribute "CorrespAcc", strNewCorrespAccValue Next .save strFile Else WScript.Echo "Can't load xml content from [" & strFile & "]." End If End With Else WScript.Echo "File [" & strFile & "] not found" End If Else WScript.Echo "Usage: " & WScript.ScriptName & " <xml-file>" End If WScript.Quit 0 Путь к файлу xml задаётся параметром скрипта (также можно просто перетянуть xml-файл на скрипт в Проводнике). |
Отправлено: 19:25, 10-11-2017 | #18 |
Новый участник Сообщения: 6
|
Профиль | Отправить PM | Цитировать Iska, пр запуске выдает ошибку:
Строка: 1 Символ: 8 Ошибка: Предполагается наличие ";" Код: 800А03ЕС |
Последний раз редактировалось Kadoh, 13-11-2017 в 11:35. Отправлено: 10:56, 13-11-2017 | #19 |
Новый участник Сообщения: 6
|
Профиль | Отправить PM | Цитировать Iska подскажи в каком месте указать путь к файлу?
|
Последний раз редактировалось Kadoh, 13-11-2017 в 11:58. Отправлено: 11:23, 13-11-2017 | #20 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - [решено] Сравнение файлов и замена значения из одного файла в другой. | Aleks911tat | Скриптовые языки администрирования Windows | 12 | 25-08-2012 22:27 | |
работа с файлами в HEX формате, поиск и замена по 16ричному адресу значения в файле. | andr_mozg | AutoIt | 3 | 10-03-2012 10:20 | |
CMD/BAT - [решено] Поиск файла, значения в файле и создания для них переменных | popoves | Скриптовые языки администрирования Windows | 4 | 29-02-2012 20:59 | |
CMD/BAT - [решено] Задавать значения и путь в текстовом файле | white155 | Скриптовые языки администрирования Windows | 4 | 16-04-2011 14:10 | |
Теория - Можно ли достать значения цены с графика, получив их в текстовом файле? | evg64 | Программирование и базы данных | 1 | 26-10-2009 07:26 |
|