Замена строк в файле формата .xml
Здравствуйте, уважаемые форумчане OSZone.net. Нужна помощь, а именно:
в файле, например, "example.xml" нужно найти и заменить строку "<MediaPath Path="Media" />" на "<MediaPath Path="Media" /><MediaPath Path="Vehicles" />" (второе пункт, "Vehicles", со следующей строчки). Возможно ли это сделать через .bat файл? Файл 152439 |
TheLeon, зависит от содержимого файла. Надёжнее использовать WSH/PowerShell.
Упакуйте оригинальный файл .xml и откорректированный файл .xml в архив и приложите к сообщению. |
Это не вполне XML.
На PowerShell: Код:
$sSourceFile = 'C:\Мои проекты\0153\config.xml' |
Iska, здравствуйте ещё раз, на счёт оболочки PowerShell, т.е. каждому придётся менять политику PowerShell(а то по-умолчанию: блокирует все скрипты), без этого ограничения никак сделать нельзя, верно? Или можно, например, через батник изменить политику(если возможно) и потом уже запустить сам скрипт?
|
TheLeon, ну, вот Вам на WSH:
Код:
Option Explicit |
Iska, опять проблема, вроде пытаюсь запустить, но выдает ошибку, что не может найти "Config.xml" - это из-за того(наверно), что я поставил вместо "strSourceFile = "С:/.../config.xml"" на "strSourceFile = "config.xml"", т.е. надо ставить полный путь? (извиняюсь за тупость, просто ни разу не пользовался подобными средствами).
- P.S: Задумка была такова: установщик(созданный на Inno Setup) заканчивает установку основных файлов для игры, затем запускается батник(или подобное) и прописывает дополнительные строчки (например, "<MediaPath Path="Vehicles" />") в конфигурационном файле(это для того, чтобы папка тоже была задействована при запуске игрушки). |
Цитата:
Цитата:
Цитата:
|
Iska, как-то не подумал о готовом файле, спасибо за помощь и извините, что занял ваше время.
|
TheLeon, нет, ну, если у Вас действительно в зависимости от каких-то параметров инсталляции в случае а) добавляется одно, в случае б) добавляется другое, в случае в) добавляется первое и третье, а в случае г) не добавляется ничего — тогда, действительно, имеет смысл именно корректировать файл (причём, прямо из-под инсталляции, посредством встроенного языка), а не делать кучу готовых файлов на все случаи жизни.
|
Iska, а, слушайте: я задал вопрос о скрипте потому, что этот файл (config.xml), мог уже до начала установки редактирован, т.е. уже были добавленные какие-нибудь строчки, вот я и хотел с помощью скрипта добавить свои строчки в этот файл, автоматизированно.
- Каждая строчка отвечала за подгрузку файлов для игры, от стандартных до кастомных(моды). - И тут появляется опять проблема, как поставить путь до файла, в соответствие с настройками пользователя(смотря какой он путь выбрал). |
Цитата:
|
Покажите код Вашего скрипта .iss. Покажите в нём место для вызова скрипта .vbs.
|
TheLeon, надо не просто прятать под спойлер, а сначала — обрамить тэгом «code», и только затем обрамлять тэгом «spoiler».
Этого недостаточно. Повторяю: Цитата:
|
Не проверялось.
vehicles.vbs
Код:
Option Explicit .iss
Код:
[Run] |
Iska, спасибо, всё работает.
|
Время: 15:15. |
Время: 15:15.
© OSzone.net 2001-