loban_ser Нет, схода не напишу, могу только сказать, как это сделать. Сначала, с помощью StringRegExpReplace() получаем содержимое секции [Reg], затем получаем нужный массив с помощью StringRegExp (). В принципе, задачка не сложная, но регулярные выражения требуют аккуратности, написать в слепую очень сложно, я обычно пользуюсь отладчиком. Может, попозже напишу пример.
loban_ser, вы можете посмотреть рег.выр. тут, и есть ещё на официальном сайте аналог. Но я делал для версии 3.3.8.1, а для последних ищите анализатор на оф.форуме. По крайне мере ничего сложного в плане алгоритма: найти секцию, потом любой текст до переноса строки в начале которой будет открывающая скобка или конец файла, типа (?s)[\r\n]\s*\[Reg\]/K(.+?)(?=[\r\n]+\[|\z)
D:\USBTOR\RePack\RePack\Binary\Files>for /f "tokens=1,2,3 delims==" %a in ('"cAu3.exe IniReadSection('WinPe.ini','Reg') /da:'=' /i:1"') do echo %a %b %c D:\USBTOR\RePack\RePack\Binary\Files>echo System Reg1 Значение System Reg1 Значение D:\USBTOR\RePack\RePack\Binary\Files>echo Software Reg2 Значение Software Reg2 Значение
for /f "delims=" %%a in ('2^>nul dir /s /b /a:-d "%#Path%"') do cAu3.exe "_FileWrite('%%a',StringReplace(_FileRead('%%a',FileGetEncoding('%%a')),'%~1','%~2'),FileGetEncoding('%%a')+2)" >NUL
Вместо:
Код:
for /f "delims=" %%a in ('2^>nul dir /s /b /a:-d "%#Path%"') do cAu3.exe "_FileWrite('%%a',StringReplace(_FileRead('%%a',0),'%~1','%~2'),512+2)" >NUL
Я так понимаю, что вторая сохраняет файлы в анси кодировке, независимо какя кодировка у них до этого была, а если нужно оставить кодировку неизменной то луше будет первый вариант? Или я не прав.
for /f "delims=" %%a in ('2^>nul dir /s /b /a:-d "%#Path%"') do cAu3.exe "_FileWrite('%%a',StringReplace(_FileRead('%%a',0),'%~1','%~2'),FileGetEncoding('%%a')+2)" >NUL
При чтении кодировка и так автоматом определяется.
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете прикреплять файлы к сообщениям Вы не можете скачивать файлы