Имя: Пароль:
1C
1С v8
Найти файлы без скрытых или временных
0 Boudybuilder
 
31.10.18
12:51
МассивФайлов = НайтиФайлы(Папка,"*.xls*");

- Вот таким образом нахожу файлы. Но проблема в том, что если в этой папке какой то файл будет открыт в Екселе, то там создается его временная копия, в названии какой есть такие символы "~$" , и тогда программа 1С ругается на этот файл, так как он тоже попадает во временные файлы. Можно ли как то указать маску минуя такие открытые файлы?
1 Fragster
 
гуру
31.10.18
12:52
а что, при обходе исключить скрытые файлы религия не позволяет?
2 Boudybuilder
 
31.10.18
12:55
(2) Думал об этом.

Я ж их так сортирую чтобы получить самый новый:

    СписокФайлов = Новый СписокЗначений;
    
    Для Каждого Файл ИЗ МассивФайлов Цикл
        СписокФайлов.Добавить(Файл.ПолучитьВремяИзменения(), Файл.ПолноеИмя);
    КонецЦикла;
    
    СписокФайлов.СортироватьПоЗначению(НаправлениеСортировки.Убыв);


И там как проверить? через найти в строке "~$" ?
3 Fragster
 
гуру
31.10.18
12:56
Файл.ПолучитьНевидимость (File.GetHidden)
Файл (File)
ПолучитьНевидимость (GetHidden)
Синтаксис:

ПолучитьНевидимость()
Возвращаемое значение:

Тип: Булево.
Истина - у файла установлен атрибут "Скрытый"; Ложь - в противном случае.
Описание:

Получает значение атрибута файла "Скрытый" ("Hidden").

Доступность:

Тонкий клиент, веб-клиент, мобильный клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение(клиент), мобильное приложение(сервер).
Примечание:

Применим только к файлам или каталогам, которые реально существуют.
Для работы метода на веб-клиенте необходимо предварительно подключить расширение работы с файлами.
Пример:

Если ВыбФайл.ПолучитьНевидимость() Тогда
    Сообщить("Файл "+СокрЛП(ВыбФайл.Имя)+" невидим");
КонецЕсли;


См. также:

Файл, метод НачатьПолучениеНевидимости

--------------------------------------------------------------------------------

     Методическая информация
4 Fragster
 
гуру
31.10.18
12:56
если хочешь - по имени, конечно