Ir para conteúdo
  • Cadastre-se

Manipulando arquivos através de LUA


Posts Recomendados

Manipulando arquivos através de LUA

Abrindo um arquivo

Para começar, você terá que abrir o arquivo.Para isso, usamos a função io.open(arquivo[modo]), que também pode cria-lo caso não exista.Arquivo será o seu diretório,que caso não exista retornará nil, e modo são os seguintes:

  1. "r" - Modo de leitura.
  2. "rb" - Leitura em modo binário.
  3. "w" - Modo de escrita.
  4. "wb" - Escrita em modo binário.
  5. "a" - Adicionar ao arquivo.
  6. "r+" - Modo de atualização preservando os dados anteriores.
  7. "w+" - Modo de atualização apagando os dados anteriores.
  8. "a+" - Modo de adição e atualização, preservando os dados anteriores e adicionando ao final do arquivo.

Por exemplo, quero abrir um arquivo que se chama Iuri.lua e está no disco rígido C:, uso:


io.open("C://Iuri.lua") 

Caso o arquivo não exista, irá retornar nil. Escrevendo em arquivos Para fazer a escrita em um arquivo é muito simples, basta usar file:write(...), onde file é o arquivo que abrimos anteriormente.Em ... será colocada uma string que irá ser escrita conforme o modo de abertura do arquivo definido anteriormente. Ex.:


local file = io.open("C://Iuri.lua")

file:write('Este é um tutorial')

file:close() 

Lendo arquivos Para fazermos a leitura do arquivo, usamos file:read(...).Se nenhum formato for especificado, ele usará o formato padrão("*l").Os outros formatos são:
  1. "*n" - Lê um número, este é o único formato que retorna um número ao invés de uma cadeia.
  2. "*a" - Irá ler o arquivo inteiro, iniciando da posição atual.
  3. number - Irá ler o arquivo até o número de caracteres definido.
Ex.:


local file = io.open("C://Iuri.lua")

print(file:read())

file:close() 

Isso irá printar 'Este é um tutorial' no console , o que foi escrito anteriormente. file:lines() file:lines(), é usado em um laço for e sua sintaxe é a seguinte:

for linha in file:lines do

corpo

end 

Isso criará uma repetição sobre todas as linhas do arquivo com linha retornando os caracteres da linha em questão. Ex.:


local file = io.open("C://Iuri.lua")

for linha in file:lines do

print(linha)

end

file:close()

Como só foi escrito uma linha no arquivo irá printar 'Este é um tutorial', se embaixo disso escrevessemos 'Teste' o for se repetiria 2 vezes e iria printar: 'Este é um tutorial' 'Teste' Finalizando o arquivo Por último, iremos finalizar o arquivo, usando o file:close(), que já foi mostrado nos exemplos anteriores. Deletando arquivos ou diretórios Para deletar arquivos e diretórios, usamos a função os.remove(file or directory), lembrando que o arquivo não pode estar em uso e o diretório vazio. Ex.:

os.remove("C://Iuri.lua") 

Creditos

Dean

Contato;

6yonKDJ.png god.marinii

TaxNfhb.png

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo