Função: SplitPath
Divide um diretório completo em todas as suas subpartes (drive, diretório, nome e extensão).
SplitPath ( < cArquivo>, [ @cDrive], [ @cDiretorio], [ @cNome], [ @cExtensao] ) --> Nil
Nome | Tipo | Descrição | Obrigatório | Referência |
cArquivo | Caracter | Indica o nome do arquivo que será quebrado. Além disso, opcionalmente, pode-se incluir o diretório e unidade do disco. | X | |
cDrive | Caracter | Indica o nome da unidade do disco (exemplo: C:\). Caso o arquivo informando não possua a unidade de disco ou o diretório refira-se ao servidor, a função retornará uma string em branco. | X | |
cDiretorio | Caracter | Indica o nome do diretório. Caso o arquivo informado não possua diretório, a função retornará uma string em branco. | X | |
cNome | Caracter | Indica o nome do arquivo sem extensão. Caso o parâmetro cArquivo não seja informado, a função retornará uma string em branco. | X | |
cExtensao | Caracter | Indica a extensão do arquivo informado, no parâmetro cArquivo, pré-fixada com um ponto ".". Caso a extensão, no parâmetro cArquivo, não seja especificada, a função retornará uma string em branco. | X |
Nil (Nulo)
- Todos os parâmetros, a partir do segundo, quando passados, devem ser por referência.
- O diretório, caso informado, incluíra uma barra como último caractere.
- A extensão, quando retornada, sempre incluirá o ponto (.) antes da extensão.
- Essa função não valida a sintaxe do diretório e/ou arquivo digitado, nem a existência do mesmo.
- Essa função é utilizada para determinar, em uma string, os elementos que compõe um diretório para a localização de um arquivo.
- Todos os arquivos locais e no servidor, podem ser informados nessa função.
//Exemplo 1Local cDrive, cDir, cNome, cExtSplitPath( 'c:\path\arquivo.ext', @cDrive, @cDir, @cNome, @cExt )/* Retorno cDrive // Resultado: "c:"cDir // Resultado: "\path\"cNome // Resultado: "arquivo"cExt // Resultado: ".ext"*/-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------//Exemplo 2//No exemplo abaixo , exemplificamos o funcionamento da função SplitPath , usando combinações de nomes de arquivos com ou sem drive , caminho , nome de arquivo e/ou extensão. User Function TSTSplit()Local aArq := {} , cDrive, cDir, cNome, cExtaadd(aArq,'c:\path\arquivo.ext')aadd(aArq,'c:\path\arquivo')aadd(aArq,'c:\path\')aadd(aArq,'c:\arquivo')aadd(aArq,'\path\arquivo.ext')aadd(aArq,'path\arquivo')aadd(aArq,'\\servidor\pasta\')aadd(aArq,'\\servidor\pasta\arquivo.ext')aadd(aArq,'')For nI := 1 to len(aArq) SplitPath( aArq[nI], @cDrive, @cDir, @cNome, @cExt ) conout( aArq[nI] + ' ['+cDrive+'] ['+ cDir +'] ['+ cNome +'] ['+ cExt + ']')Next//Após executado o programa acima, deve ser exibido no console do Protheus Server o texto abaixo : c:\path\arquivo.ext [c:] [\path\] [arquivo] [.ext]c:\path\arquivo [c:] [\path\] [arquivo] []c:\path\ [c:] [\path\] [] []c:\arquivo [c:] [\] [arquivo] []\path\arquivo.ext [] [\path\] [arquivo] [.ext]path\arquivo [] [path\] [arquivo] []\\servidor\pasta\ [] [\\servidor\pasta\] [] []\\servidor\pasta\arquivo.ext [] [\\servidor\pasta\] [arquivo] [.ext] [] [] [] []
Advanced Protheus 6.09
,
Advanced Protheus 7.10
,
Microsiga Protheus 8.11
,
Protheus 10
,
TOTVS Application Server 10
,
ByYou Application Server
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas