Renomeia um arquivo.

Sintaxe

FRename( < cArquivo >, < cNovoArq >, [ nParam3 ], [ lChangeCase ] )

Parâmetros

Nome

Tipo

Descrição

Obrigatório

Referência

cArquivo

caractere

Indica o nome do arquivo que será renomeado, inclusive sua extensão. Também podem ser incluídos como parte do nome uma letra indicativa da unidade de disco e/ou nome do diretório. Caso não seja especificado nenhuma unidade de disco ou diretório, será considerado o diretório atual do servidor.

X

 

cNovoArq

caractere

Indica o novo nome do arquivo, incluindo a extensão. Também podem ser incluídos como parte do nome uma letra indicativa da unidade de disco e/ou nome do diretório.

X

 

nParam3

nil

Compatibilidade, informar sempre 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 0 (zero), se a operação for realizada com sucesso; caso contrário, retornará -1 se falhar. Em caso de falha, utilize a função FError() para obter mais detalhes.

Observações

  • Para renomear o arquivo, este deve estar fechado. Isto é, não pode estar em uso por nenhum outro processo ou estação. Caso o arquivo esteja aberto, a operação de renomear não será realizada.
  • É possível renomear o arquivo especificando nos parâmetros, simultaneamente, um diretório do servidor e da estação remota, bem como especificar dois arquivos remotos e executar a função através de um JOB.
  • Essa função não aceita caracteres-curinga (Wild cards), tais como: * e/ou ?.
  • 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.

Atenção

Quando especificado um path diferente nos arquivos de origem e destino, a função FRename() move o arquivo para o path especificado.

Exemplos

#include 'fileio.ch'...
// Neste exemplo, a função é utilizada para 3 finalidades diferentes, observe:
User Function exemplo1()
  // Renomeando um arquivo no Client de origem.txt para destino.txt , na pasta c:\Temp
  nStatus1 := frename('c:\Temp\Origem.txt' , 'c:\Temp\Destino.txt' )
  IF nStatus1 == -1
   MsgStop('Falha na operação 1 : FError '+str(ferror(),4))
  Endif
  // Renomeando um arquivo no servidor, na pasta sigaadv, de error.log para error.old
  nStatus2 := frename('\sigaadv\error.log' , '\sigaadv\error.old' )
  IF nStatus2 == -1
   MsgStop('Falha na operação 2 : FError '+str(ferror(),4))
  Endif
  // Movendo um arquivo no estação, da pasta Raiz para a pasta c:\Temp , alterando também o nome do arquivo.
  nStatus3 := frename('c:\Lista.txt','c:\Temp\OldLista.txt')
  IF nStatus3 == -1
   MsgStop('Falha na operação 3 : FError '+str(ferror(),4))
  Endif
Return

Veja também

  • Sem rótulos