nikzzzz
  - Longevity: 8 years 10 months
- Posts: 3114
- REPUTATION:127[+] [-]
|
Ссылки на разные темы, обсуждения и т.п. , шапку потом поправлю.
|
loban_ser
  - Longevity: 5 years 9 months
- Posts: 573
- REPUTATION:23[+] [-]
|
nikzzzz,  Даже не знаю в этой ли теме пишу или нет, нужно вывести в консоль все параметр=значение определенной секции в ini файле с помощью cAu3.exe[Reg] Reg1=Значение Reg2=Значение Возможно это?cAu3.exe "IniReadSection('Old.ini','Reg')"
|
nikzzzz
  - Longevity: 8 years 10 months
- Posts: 3114
- REPUTATION:127[+] [-]
|
loban_ser,Нет, cAu3 не поддерживает двухмерные массивы, может добавлю. Но данная задача может быть решена с помощью StringRegExp ().
|
loban_ser
  - Longevity: 5 years 9 months
- Posts: 573
- REPUTATION:23[+] [-]
|
|
nikzzzz
  - Longevity: 8 years 10 months
- Posts: 3114
- REPUTATION:127[+] [-]
|
loban_ser Нет, схода не напишу, могу только сказать, как это сделать. Сначала, с помощью StringRegExpReplace() получаем содержимое секции [Reg], затем получаем нужный массив с помощью StringRegExp (). В принципе, задачка не сложная, но регулярные выражения требуют аккуратности, написать в слепую очень сложно, я обычно пользуюсь отладчиком. Может, попозже напишу пример.
|
nikzzzz
  - Longevity: 8 years 10 months
- Posts: 3114
- REPUTATION:127[+] [-]
|
loban_ser Обновил утилиту, теперь74459cAu3.exe "IniReadSection('Old.ini','Reg')" должно работать.
|
loban_ser
  - Longevity: 5 years 9 months
- Posts: 573
- REPUTATION:23[+] [-]
|
Как быть если в параметре и значении присутствуют пробелы?
|
nikzzzz
  - Longevity: 8 years 10 months
- Posts: 3114
- REPUTATION:127[+] [-]
|
loban_ser,74498Как быть если в параметре и значении присутствуют пробелы? for /f "tokens=1,* delims==" %a in ('"cAu3.exe IniReadSection('WinPe.ini','Reg') /da:'=' /i:1"') do echo %a=%b
|
loban_ser
  - Longevity: 5 years 9 months
- Posts: 573
- REPUTATION:23[+] [-]
|
nikzzzz,  Будет ли верна такая конструкция?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 Я так понимаю, что вторая сохраняет файлы в анси кодировке, независимо какя кодировка у них до этого была, а если нужно оставить кодировку неизменной то луше будет первый вариант? Или я не прав.
|
nikzzzz
  - Longevity: 8 years 10 months
- Posts: 3114
- REPUTATION:127[+] [-]
|
loban_ser,  Не сомненно, первый вариант более правильный.
|
loban_ser
  - Longevity: 5 years 9 months
- Posts: 573
- REPUTATION:23[+] [-]
|
nikzzzz,
|
nikzzzz
  - Longevity: 8 years 10 months
- Posts: 3114
- REPUTATION:127[+] [-]
|
В принципе, можно его сократить до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 При чтении кодировка и так автоматом определяется.
|
Page 1 of 2
Current time is: 05-Dec 12:04
All times are UTC + 3
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You cannot download files in this forum
|
|