Descobrir a extensão de um arquivo

Delphi

17/05/2007

Olá pessoal, tudo bem? Espero que sim..

Tem algum jeito de eu descobrir a extensão de um arquivo? Tipo, vou explicar o porque disso.

To fazendo um programinha pra fazer Backup/Restore de bancos Firebird e Interbase. Sei que o comando é o mesmo pros dois, e to usando o IbBackService e o IbRestoreService pra isso.

Então como eu to fazendo. O usuário seleciona um arquivo numa OpenDialog, depois seleciona o caminho onde vai ser criado o backup e clica no botão, e ele cria o backup, a mesma coisa pro restore.

Só que na hora de criar o backup, eu coloco assim:

BackupFile.Text := EdtDestinoCriar.Text+´\Backup´+ FormatDateTime(´(yyyy.mm.dd.hhnn)´, now)+´.fbk´;


Pra ele criar no diretório selecionado, com o nome Backup mais a hora de criação mais a extensão fbk.

E o restore uso assim:

DataBaseName.Add(EdtDestinoRestaurar.Text+´\DADOS.FDB´);


Pra ele criar o arquivo com o nome de DADOS.FDB.

E o q eu quero fazer é o seguinte. Se o banco selecionado tiver a extensão GDB, ele cria um backup com a extensão GBK, e se o backup selecionado tiver a extensão GBK, ele restaura o banco com a extensão GBD.

Desse jeito que to fazendo, ele só faz backup com extensão fbk e restauraçao com extensao fdb.

Grato pela ajuda. :D


Aersoftware

Aersoftware

Curtidas 0

Respostas

Marcio.theis

Marcio.theis

17/05/2007

User a função [b:38a9cbd1dc]ExtractFileExt()[/b:38a9cbd1dc], precisa somente passar entre os parênteses o arquivo.


GOSTEI 0
Aersoftware

Aersoftware

17/05/2007

Marcio, mas essa função não vai extrair todo nome do arquivo? Tipo DADOS.FDB, aí como eu iria separar a extensão do nome do arquivo?


GOSTEI 0
Massuda

Massuda

17/05/2007

No seu exemplo: ExtractFileExt(´dados.fdb´) retorna ´.fdb´ (note que tem o ponto).


GOSTEI 0
Aersoftware

Aersoftware

17/05/2007

Hmmm, certo, então acho que confundi o ´Extract´, pois eu uso um pra pegar o nome de um arquivo, excluindo o caminho dele, tipo, se tenho C:\Arquivos de Programas\Dados\Dados.fdb, ele me retornaria Dados.fdb. Acho que confundi, vou testar esse, valeu pessoal. :D


GOSTEI 0
Massuda

Massuda

17/05/2007

ExtractFileExt tem alguns ´irmãos´...

ExtractFileDrive
ExtractFileName
ExtractFilePath

...e alguns ´primos´...

ChangeFileExt
ExpandFileName
ExtractRelativePath
ExtractShortPathName

...você provavelmente pensou no membro ´mais popular´ da família, ExtractFileName.


GOSTEI 0
POSTAR