Cria um arquivo vazio no disco, para operação de escrita em modo exclusivo, com o tamanho de 0 ( zero ) bytes. Se o arquivo especificado já existe no disco, o arquivo é aberto em modo exclusivo, e seu conteúdo é eliminado ( truncado em 0 bytes ). Caso a operação não seja completa com sucesso, a função retorna o handle -1, caso contrário é retornado o handle de acesso ao arquivo, para operações de escrita.
Sintaxe
FCreate( < cArquivo >, [ nAtributo ], [ xParam3 ], [ lChangeCase ] )
Parâmetros
Nome | Tipo | Descrição | Obrigatório | Referência |
---|---|---|---|---|
cArquivo | caractere | Indica o nome do arquivo que será criado. Pode-se especificar um path absoluto ou relativo para criar arquivos no ambiente local (SmartClient) ou no servidor. | X | |
nAtributo | numérico | Compatibilidade. Deve ser informado o valor nulo ( NIL ) ou 0 (zero), o arquivo sempre será criado com atributos default. | ||
xParam3 | nil | Compatibilidade. Deve ser informado o valor nulo ( NIL ) | ||
lChangeCase | lógico | Se verdadeiro (.T.), nomes de arquivos e pastas serão convertidos para letras minúsculas; caso contrário, falso (.F.), não será feito nenhum ajuste no nome do arquivo informado. Valor padrão (.T.). Veja maiores informações em Observações. |
Retorno
Nome | Tipo | Descrição |
---|---|---|
nRet | numérico | Retorna o handle do arquivo para ser usado nas demais funções de manutenção de arquivo. O handle será maior ou igual a zero. Caso não seja possível criar o arquivo, a função retornará o handle -1. Para obter mais detalhes da casua da ocorrência, utilize a função FError. |
Observações
- O parâmetro opcional lChangeCase foi introduzido a partir do build 7.00.131227A pois em sistemas LINUX/UNIX, existe a diferenciação entre maiúsculo e minúsculo em nomes de arquivos ou pastas. Quando este parâmetro for informado, terá prioridade sobre comportamento de Case Sensitive definido pelas chaves de ini CASESENSITIVE ou SERVERTYPE. Porem, quando não especificado o parâmetro, o valor padrão (.T.) fica condicionado ao que está configurado nessas chaves.
Exemplos
#include "Fileio.ch" user function exemplo() local nHandle := FCREATE("\Testfile.txt") if nHandle = -1 conout("Erro ao criar arquivo - ferror " + Str(Ferror())) else FWrite(nHandle, Time() + CRLF) FClose(nHandle) endif return