4
我是新来的lua,但正在处理一个应用程序,该应用程序使用给定路径处理特定文件。现在,我想处理我下载的文件。有没有可用于下载和存储在我的计算机上的lua库或代码行?将文件从给定的网址下载并存储到lua中的给定路径
我是新来的lua,但正在处理一个应用程序,该应用程序使用给定路径处理特定文件。现在,我想处理我下载的文件。有没有可用于下载和存储在我的计算机上的lua库或代码行?将文件从给定的网址下载并存储到lua中的给定路径
您可以使用LuaSocket库及其http.request
函数使用来自URL的HTTP进行下载。
该函数有两种形式:
http.request('http://stackoverflow.com')
http.request { url = 'http://stackoverflow.com', ... }
简单的调用返回4个值 - 整个的URL字符串中的内容, HTTP响应代码,标题和响应行。然后,您可以使用io
库将内容保存到文件中。
高级调用允许您设置多个参数,如HTTP方法和标头。一个重要的参数是sink
。它代表LTN12-style sink。对于存储到文件,您可以使用sink.file
:
local file = ltn12.sink.file(io.open('stackoverflow', 'w'))
http.request {
url = 'http://stackoverflow.com',
sink = file,
}
它的工作原理。谢谢。 – websteerr 2012-07-10 13:46:44
用'local file'语句获得以下内容:'尝试索引本地'文件'(函数值)' – crockpotveggies 2016-08-15 21:05:47
@crockpotveggies请发布失败的完整源代码(类似pastebin的地方),以及luasocket ,因为这个答案中的短片段按预期工作。 – 2016-08-21 17:40:56