码迷,mamicode.com
首页 > 其他好文 > 详细

【Lua】LWT遍历指定目录并输出到页面中

时间:2014-11-19 22:10:47      阅读:274      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   io   ar   color   sp   for   on   

  首先用lua遍历目录:

 1 function getDirs(path)
 2   local s = {}
 3   function attrdir(p)                  
 4     for file in lfs.dir(p) do
 5       if file ~= "." and file ~= ".." then
 6         local f = p .. file
 7         local attr = lfs.attributes (f)
 8         if attr.mode == "directory" then        
 9             table.insert(s, f)    
10             attrdir(f .. "/")
11         else
12             table.insert(s, f)
13         end
14       end
15     end
16   end
17   attrdir(path)
18   return s
19 end

  然后将结果打包成JSON格式用于传递:

1 function string2JSON(path)
2   local s = getDirs(path)
3   local cjson = require("cjson")
4   local sJson = cjson.encode(s)
5   return sJson
6 end

  最后用lwt后台输出到页面中:

 1 require "httpd" 
 2 require "lfs"
 3 
 4 request, args = ... 
 5 
 6 function getDirs(path)
 7   local s = {}
 8   function attrdir(p)
 9     for file in lfs.dir(p) do
10       if file ~= "." and file ~= ".." then
11         local f = p .. file
12         local attr = lfs.attributes (f)
13         if attr.mode == "directory" then        
14             table.insert(s, f)    
15             attrdir(f .. "/")
16         else
17             table.insert(s, f)
18         end
19       end
20     end
21   end
22   attrdir(path)
23   return s
24 end
25 
26 function string2JSON(path)
27   local s = getDirs(path)
28   local cjson = require("cjson")
29   local sJson = cjson.encode(s)
30   return sJson
31 end
32 
33 httpd.set_content_type("text/plain") 
34 httpd.write(string2JSON(request.filedir))

bubuko.com,布布扣

【Lua】LWT遍历指定目录并输出到页面中

标签:style   blog   http   io   ar   color   sp   for   on   

原文地址:http://www.cnblogs.com/linxiong945/p/4109099.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!