Member 9346617 Ответов: 1

Как заменить несколько тегов в XML-документе в пакетном файле


У меня есть xml-файл с несколькими тегами. Я хочу заменить значения 2 тегов некоторыми другими значениями в пакетном файле windows.

Я пробовал ниже. Но в этом случае заменяется только " arr_name ".
Я хочу заменить как "arr-id", так и "arr_name".

Пожалуйста помочь.

Что я уже пробовал:

(for /F "delims=" %%b in (!filename!) do (
   set "line=%%b"
   set "arr_id=!line:<value>subst_arrangement_name=!"
   if "!arr_id!" neq "!line!" (
      set "arr_id=<value>123"
   )
   set "arr_name=!line:<value>subst_filename=!"
   if "!arr_name!" neq "!line!" (
      set "arr_name=<value>Test"
   )
   echo !arr_id!
   echo !arr_name!
  
)) > !newCoreXML!

RickZeeland

Не могли бы вы добавить (небольшой) пример xml-файла, который вы хотите изменить ?

1 Ответов

Рейтинг:
1

RickZeeland

Вероятно, для таких вещей проще использовать Powershell, см. пример здесь: Как можно найти и заменить текст в файле с помощью среды командной строки Windows? - переполнение стека[^]

Если вы предпочитаете пакетный файл DOS, см.: Примеры пакетных файлов DOS[^]