ФорумыТемы

Новое сообщение

Сообщения темы 'VBS - запись названий файлов в текстовый файл'

Фильтр:
содержит   Сортировка   

  

10.04.2019 02:40

      
  

12.09.2016 09:15

Работает :)

Спасибо!


      
  

gliba 20.10.2007 20:44
Иногда возникает необходимость записать названия файлов в директории и всех поддиректориях в файл. Если Вы работаете под Windows, то можно воспользоваться скриптовым Visual Basic. Код в VBS иллюстрирует этот подход.

Код



'запись sData в файл 'log.txt'
Sub log(sData)
	Dim ts, ForAppending
	ForAppending = 8
	Set ts = fso.OpenTextFile("log.txt", ForAppending, True)
	ts.Write sData & chr(13) & chr(10)
	ts.Close
End Sub

'обработка директории
Sub processDir( folder )
	log( folder.Path )
	dim file, subfolder
	For Each file in folder.Files
		log( file.Path )
		i = i + 1
	next

	For Each subfolder in folder.SubFolders
		processDir( subfolder )
	Next
End Sub

dim fso, dirStart, folder, subfolder, file, i

'стартовая директория
dirStart = "C:LTS_Build_HabFilesToInstall"

Set fso = CreateObject("Scripting.FileSystemObject")
set folder = fso.GetFolder( dirStart )
i = 0
processDir(folder)

MsgBox "записано " & i
Set fso = nothing



Комментарии

Определяем стартовую директорию dirStart. Создаем объект для работы с файловой системой fso. Вызываем подпрограмму processDir. Она печатает имена файлов из текущей директории и рекурсивно вызывает себя для каждой поддиректории. Подпрограмма log окрывает файл 'log.txt', печатает свой параметр в его конец, закрывает файл. Это сделано для надежности, более быстрый вариант - открыть файл заранее. Закрываем объект для работы с файловой системой.

Код сохраняем в файле с расширением VBS. Двойной клик мышкой и список готов.
  



Новое сообщение
 

Послать уведомление по e-mail

Продолжить


Авторизоваться через https://www.pvobr.ru
Логин
Пароль
Регистрация

Авторизоваться через соцсети
Наверх