8. Хотелка на Parser 3.4.x или как сделать ^file:exist - которого нет |
Задача: проверить физ.существование файла на диске. Задача вроде проще простой - но соответствующего метода в Parser'e не нашел.
Первое ощущение что не хватает статического метода ^file:exist[dir/filename]
- Хотел сделать через статические методы типа ^file:basename и ^file:justname но обнаружил, что они не обращаются вообще к диску - а работают просто со стрингом. - ^file::load[] - не хочется - зачем загружать файл если просто хочется проверить его существование - ^file:find[] - не хочется - зачем рыскать по всему диску если файла нет в текущей папке - Парсить содержимое текущего каталога - тоже может оказаться затратно - если много файлов - ^file::stat - тоже ругается если файла нет - (а зря кстати)
Вообщем единственный какой я навскидку нашел способ - это делать ^try{ от ^file::stat[] ... P.S.: По наитию не хватает одного из вариантов:
^file::stat[filename] # создает объект даже если файла нет, но поле добавить поле $file.exist(True|False)
^file:exist[filename] # статический метод на запрос о существовании файла - самый имхо простой и нужный
|
|
Сорри, тороплюсь в изучении... |
... вообще стыдно что не увидел в операторах - быстро привыкаешь к классам и их методам... Спасибо - реально полночи не спал. Инет временно только в интернет-кафе - поэтому в оффе сижу |
Совет |
Сядьте и прочитайте всю документацию подряд. Просто от корки до корки, ничего не выполняя.
Впоследствии, при задачах сразу будут вспоминаться подходящие инструменты. |