Рекурсия, Folder.Contents или побеждаем слишком длинные имена файлов

#АнатомияФункций - Folder.Contents



Всем привет!



Продолжаем тему рекурсии. Сегодня побеждаем слишком длинные имена файлов, а для этого вместо Folder.Files используем Folder.Contents и пишем рекурсивный обход содержимого.

let

from = Folder.Contents("C:\Users\muzyk\Desktop\папка1"),

f=(x)=>[a=Table.SelectRows(x,(r)=>r[Extension]<>""),

b=Table.SelectRows(x,(r)=>r[Extension]="")[Content],

c=if b={} then x else @f(List.Accumulate(b,a,(s,c)=>[a=try Table.RowCount(c) otherwise 0,

b=if a=0 then s else s&c][b]))][c],

to=f(from)

in

to


Что тут к чему – смотрим на ютубе

Лайк, коммент, подписка приветствуются )))



Надеюсь, было полезно.

Всех благ!

@buchlotnik