OpenComputerScripts/downloader.lua

49 lines
1.2 KiB
Lua
Raw Normal View History

2017-10-23 19:42:40 +08:00
local component=require("component")
2018-02-13 11:59:23 +08:00
local function doRealDownload(url)
local hwtable=component.list("internet")
2017-10-23 19:42:40 +08:00
local found=false
for k,v in pairs(hwtable) do
2018-02-13 11:59:23 +08:00
found=true
2017-10-23 19:42:40 +08:00
end
if(not found) then
error("The downloader requires an Internet card.")
end
local handle=component.internet.request(url)
2018-02-13 11:59:23 +08:00
2017-10-23 19:42:40 +08:00
local ans=""
while true do
local tmp=handle.read()
if(tmp==nil) then break end
ans=ans .. tmp
end
handle.close()
return ans
end
2018-02-13 11:59:23 +08:00
function DownloadFromGitHub(RepoName,Branch,FileAddress)
local url="https://raw.githubusercontent.com/" .. RepoName .. "/" .. Branch .. "/" .. FileAddress
return doRealDownload(url)
end
2017-10-23 19:42:40 +08:00
function DownloadFromOCS(FileAddress)
return DownloadFromGitHub("Kiritow/OpenComputerScripts","master",FileAddress)
end
function WriteStringToFile(StringValue,FileName,IsAppend)
if(IsAppend==nil) then IsAppend=false end
local handle,err
if(IsAppend) then
handle,err=io.open(FileName,"a")
else
handle,err=io.open(FileName,"w")
end
if(handle==nil) then return false,err end
handle:write(StringValue)
handle:close()
return true,"Success"
2018-02-13 11:59:23 +08:00
end