Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема Для каждого..из..Цикл (для 7.7) (число прочтений - 4027 )
kos
Full Member
***
Отсутствует


1C++ rocks!

Сообщений: 127
Местоположение: Киев
Зарегистрирован: 03. Марта 2013
Для каждого..из..Цикл (для 7.7)
15. Мая 2013 :: 14:17
Печать  
Хочется написать метод, такой вот:

Код
Выбрать все
функция СписокФайлов(сКаталог) Экспорт
	Список = СоздатьОбъект("СписокЗначений");
	ФСО = СоздатьОбъект("Scripting.FileSystemObject");
	Каталог = _ФСО.GetFolder(сКаталог);
	Для к=0 по Каталог.Files.Count()-1 Цикл
		Список.ДобавитьЗначение(Каталог.Files.Item(к).Path);
	КонецЦикла
	возврат Список;
КонецФункции
 



Но вот засада: коллекции "IFolderCollection" и "IFileCollection"
не имеют индекса [0...Count], доступ возможет только по ключу

Код
Выбрать все
Каталог.Files.Item(<номер>).Path = не работает
Каталог.Files.Item(<имя файла>).Path = работает (или как-то так)
 



Про эту "баго-фичу" от мелкософт прочитал здесь:
http://community.actian.com/forum/45245-post15.html

Уважаемое сообщество,
подскажите, как решить задачку?

Нужно что-нить типа восмерочной конструкции

Код
Выбрать все
Для каждого Файл из Каталог.Files Цикл
	Список.ДобавитьЗначение(Файл.Path);
КонецЦикла
 



Может можно как-то обернуть выполнение скрипта
в "ВыполняемыйМодуль" и в самом скрипте получить такой список?

Только вот не пойму как.

Помогите, плиз.

П.С. способ "ФС.НайтиПервыйФайл()" не устраивает
(на самом деле задача глубже...)
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Для каждого..из..Цикл (для 7.7)
Ответ #1 - 15. Мая 2013 :: 14:29
Печать  
http://www.kb.mista.ru/files/70/1CSee.zip

на, мот поможет..
и это погляди, на всякий
http://www.script-coding.com/WSH/FileSystemObject.html
  
Наверх
 
IP записан
 
kos
Full Member
***
Отсутствует


1C++ rocks!

Сообщений: 127
Местоположение: Киев
Зарегистрирован: 03. Марта 2013
Re: Для каждого..из..Цикл (для 7.7)
Ответ #2 - 15. Мая 2013 :: 14:43
Печать  
спасибо, то что доктор прописал.
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать