|
VBS - работа с ini файлами
#39130501
Ссылка:
Ссылка на сообщение:
Ссылка с названием темы:
|
|
|
|
Облазил я весь интернет , но так и не нашел простого скрипта, потому предлагаю свой.
Он простой и понятный.
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44.
Set fso = CreateObject("Scripting.FileSystemObject")
DIM massiv(100) '---- массив в 100 ячеек задаем, на всяк пожарный, можно и больше
path="common" '---- Задаем значение РАЗДЕЛА в ини файле
param="timestop" '---- Задаем какой параметр искать
value="3000" '---- Какое значение этому параметру присвоить
Set objArgs = WScript.Arguments
if objArgs.Count>0 then '---- Если задаем из строки параметры после имени файла скрипта, то
path=objArgs(0) '---- если параметров больше нуля(тоесть есть параметры), то первый параметр присваиваем РАЗДЕЛУ
param=objArgs(1) '---- второй - параметру, третий значению параметра
value=objArgs(2)
end if
i=1
Set ts1 = fso.OpenTextFile( "transrv.ini", 1, False) '---- Открываем файл для чтения из него
Do While Not ts1.AtEndOfStream
buf = ts1.ReadLine '---- Читаем в переменную БУФ построчно
if instr(buf,path)>0 then '---- Если нашлась строка, содержащая название раздела КОММОН
massiv(i)=buf '---- в массив ложим ее, смещаем счетчик на +1,
i=i+1
massiv(i)=param+"="+value '----в массив ложим строку с ПАРАМЕТРОМ=ЗНАЧЕНИЕ новое
i=i+1
buf = ts1.ReadLine
end IF
if instr(buf,param)=0 then '---- Дальше добавляем в масив все строки, кроми той, которую заменяли,
massiv(i)=buf '---- она уже не нужна, мы ее после названия раздела добавили
i=i+1
end If
Loop
ts1.Close
Set ts1 = Nothing
Set xlApp = Nothing
Set fso = Nothing
Set fso = CreateObject("Scripting.FileSystemObject")
Set ts = fso.CreateTextFile( "transrv.ini", 1, False) '---- Создаем файл наново
for k=1 to i-1 '---- Циклом вносим все данные в файл, сохраняем
ts.WriteLine(massiv(k)) '---- В результате получили файл, после искомого РАЗДЕЛА, сразу стоит ПАРАМЕТР = ЗНАЧЕНИЕ
next '---- Вот таким простым способом сделали редактирование ИНИ файла
ts.Close
|
|
|