PT-BR/fileCreate

From Multi Theft Auto: Wiki
Jump to navigation Jump to search

Cria um novo arquivo em um diretório do resource. Se já existir algum arquivo com o nome e caminho especificado, então haverá uma substituição para este novo arquivo vazio criado.

Post-it.png Nota: Para prevenir perdas de memória, certifique que está fechando o arquivo com fileClose depois de aberto e trabalhado com esse arquivo.
Post-it.png Nota: As funções que manipulam arquivos não devem ser utilizadas para implementar arquivos de configuração. É recomendado usar as funções XML.
Tip-ptbr.png Dica: Se você não quiser compartilhar o conteúdo do arquivo criado com outros servidores, nomeie o caminho do arquivo com @ no início. Veja a página filepath para entender melhor.

Sintaxe

file fileCreate ( string filePath )

Sintaxe POO(OOP) Não entendeu o que significa isso?

Nota: Esta é uma função estática abaixo da classe File.
Método: File.new(...)
ADICIONADO/ATUALIZADO NA VERSÃO 1.5.6 r11865:

Sintaxe POO(OOP) Não entendeu o que significa isso?

Nota: Esta é uma função estática abaixo da classe File. Se usar File(...) para abrir um arquivo e esse mesmo não existir, então a função tentará criar um novo arquivo.
Método: File.new(...)


Argumentos necessários

  • filePath: O caminho do arquivo a ser criado seguindo o seguinte formato: ":resourceName/path". resourceName é o nome do resource do arquivo que vai estar lá, e path é o caminho do arquivo relativo ao diretório do resource.
Por exemplo, se você quiser criar um arquivo chamado 'meuarquivo.txt' no resource 'mapcreato', isso poderá ser criado de um outro resource desta forma: fileCreate(":mapcreator/meuarquivo.txt")
Já se o arquivo estiver no resource atual, apenas o caminho é necessário, ex.: fileCreate("meuarquivo.txt")

Retorno

Se tiver tido sucesso na execução, retorna um arquivo que poderá ser usado com outras funções do tipo (fileWrite, fileClose...). E retorna false se algum erro tiver ocorrido.

Exemplo

Este exemplo cria um arquivo de texto no resource atual e escreve um pequeno texto nele.

local newFile = fileCreate("test.txt")                -- tenta criar um novo arquivo
if (newFile) then                                       -- verifica se a criação foi um sucesso
    fileWrite(newFile, "This is a test file!")        -- escreve uma linha de texto
    fileClose(newFile)                                -- fecha o arquivo assim que terminar de trabalhar nele
end

Observe que você não pode simplesmente fazer isso fileWrite("test.txt", "File content"). Em vez disso, as funções que manipulam os arquivos operam na variável arquivo, que é um tipo de objeto especial representando um arquivo aberto. A função fileCreate cria um arquivo, abre ele e retorna o resultado deste arquivo.

E também é importante lembrar de fechar um arquivo depois que você finalizar tudo o que precisa fazer nele, especialmente se você está definindo ou escrevendo novos valores nesse arquivo. Se você não fechar o arquivo e o resource travar de alguma forma, todas as mudanças no arquivo podem ser perdidas. Se o arquivo já existir, um novo vai ser criado no lugar.

Veja também