Funções Para Tratamento De Arquivos

Nostradamus
em Tutoriais de Scripting

Nostradamus

Serviços Prestados ao XTibia.com
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 10/06/06Posts: 338Char no Tibia: Setyte Berseker

Desenvolvi algumas funções para tratamento de arquivos fácilmente, não é como a do Colex, que por sinal, é mais completa, mas, já ajuda.

 

function File:Exists(filename)
 local file = io.open(filename, "r")
 if (file == nil) then 
return false 
 else
file:close()
return true  
 end	
end

function File:Create(filename, content)
if (content == nil) then return false end
local file = io.open(filename, "w")
if (file == nil) then return false end
file:write(content)
file:flush()
file:close()


return true
end

function File:Save(filename, content)
 if (content == nil) then return false end
 local file = io.open(filename, "w+b")
 if (file == nil) then return false end
 file:write(content)
 file:flush()
 file:close()
 return true
end

function File:Load(filename)
 local file = io.open(filename, "r")
 if (file == nil) then return nil end  
 local load = file:read("*all")
 file:close()
 return (load)
end

function File:LoadAsTable(filename)
 local file = io.open(filename, "r")
 if (file == nil) then return nil end
 local load = {}
 while true do
  local line = file:read("*l")  
  if (line == nil) then break end
  table.insert(load, line)
 end
 file:close()
 return load, table.getn(load)
end

function File:GetExtension(filename)
local fileExt = nil
for w in string.gfind(filename, "(%.%a*)") do
	   fileExt = string.lower(string.sub(w, 2, 10))
end 
return fileExt
end

function File:GetName(filename)
local rFileName = nil
for w in string.gfind(filename,"(%w*%.%w*)") do 
	   rFileName = string.lower(string.sub(w, 1, string.find(w, "%.")-1))
end 
return rFileName
end

 

Creio que o nome das funções se auto-explicam, mas se tiverem dúvidas, é só postarem.

[twitter]ThomazYuji[/twitter]

colex

Serviços Prestados a Comunidade
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 03/10/05Posts: 301Gênero: Masculino

Ficou muito bom e organizado

gostei principalmente da LoadAsTable

 

Abraços,

Colex

milenium666

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 01/09/06Posts: 2

ond q eu coloco isso ?

desculpa perguntar isso .. =P

eh q eu tava tentando achar ond coloca x.x

xdtibia16

aLuXeS
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 29/06/08Posts: 354Char no Tibia: Sir Aluxes

é VBScript?

Vou Ver.

Eventide

avatar
Cavaleiro
Cavaleiro

INFOS

Grupo: CavaleiroRegistrado: 08/10/08Posts: 189

VB? lawl

onde coloca? coloca no global.lua

muito bom, vai ajudar muito essas funções :-P



?

 

 

1440522_2.png