Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: VBS, поиск и замена в строке в txt файле
Покинул форум
Сообщений всего: 87
Дата рег-ции: Дек. 2009
Помог: 0 раз(а)
Здравствуйте. Только постигаю VBS.
Есть файл 111.txt в котором в столбец записаны имена компов.
Комп грузится, находит своё имя и стирает его.
В принципе поиск своего имени реалезован, но не могу сообразить как его стереть.
пытаюсь так:
Покинул форум
Сообщений всего: 1580
Дата рег-ции: Февр. 2014 Откуда: Украина
Помог: 73 раз(а)
Набросал пример на VBA, проверил в MS Word - работает корректно. При необходимости допилите его под VBS. В переменную need запишете искомую подстроку, а в переменную repl - значение для замены. Если замена не требуется (только удаление), тогда оставьте переменную repl как есть:
Set fso = CreateObject("Scripting.FileSystemObject")
fname = "С:\111.txt"
need = "" 'Что ищем
repl = "" 'На что меняем
Set txtFile = fso.OpenTextFile(fname, 1)
str = txtFile.ReadAll
txtFile.Close
str = Replace(str, need, repl)
Kill fname
Set txtFile = fso.CreateTextFile(fname, True)
txtFile.Write (str)
txtFile.Close
End Sub
Axiles
Отправлено: 22 Октября, 2018 - 10:01:22
Гость
Покинул форум
Сообщений всего: 87
Дата рег-ции: Дек. 2009
Помог: 0 раз(а)
Хммм.
Если я правильно понял:
-открыли файл для чтения
-считали всё содержимое
-закрыли файл
-заменили найденные подстроки (кстати не знал что реплейс может вот так вот сразу весь массив реплеснуть. думал нада по строкам...)
-Kill fname это что? удалили файл?
-создали файл заново
-записали в него
-закрыли
я уже хотел примерно по такому же пути идти, только через одно место ), а оказывается всё гораздо проще)
Строитель
Отправлено: 22 Октября, 2018 - 11:55:13
Участник
Покинул форум
Сообщений всего: 1580
Дата рег-ции: Февр. 2014 Откуда: Украина
Помог: 73 раз(а)
Axiles пишет:
Если я правильно понял ...
Да, правильно.
Axiles пишет:
Kill fname это что? удалили файл?
Да, это удаление файла.
Axiles
Отправлено: 23 Октября, 2018 - 05:33:08
Гость
Покинул форум
Сообщений всего: 87
Дата рег-ции: Дек. 2009
Помог: 0 раз(а)
А вот такой вопрос.
Может получиться так, что один комп запустил скрипт с ервера, удалил файл, но ещё не создал новый, в это время другой комп запускает этот же скрипт, а файла то нету!
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.