I need a list of directory in LUA
Suppose I have a directory path as "C:\\Program Files"
I need a list of all the folders in that particular path and
Don't parse ls, it's evil! Use find with zero-terminated strings instead (on linux):
function scandir(directory)
local i, t = 0, {}
local pfile = assert(io.popen(("find '%s' -maxdepth 1 -print0"):format(directory), 'r'))
local list = pfile:read('*a')
pfile:close()
for filename in s:gmatch('[^\0]+')
i = i + 1
t[i] = filename
end
return t
end
WARNING: however, as an acceped answer this apporach could be exploited if directory name contain ' in it. Only one safe solution is to use lfs or other special library.